SRL Archive - RS3 Outdated / Broken Scripts

P1nky's PestController


P1nky

2012-02-01 01:22:49

BETA
[YOUTUBE]lQHQf3f_0YE[/YOUTUBE]




Setup:

1) Set Player outside the boat.
2) Start the Script.


Future Plans:

1) Attack Portals/ALL Pests.
2) Add A lot more Fancy Features.


Bugs:
1) Progress Report
2)
3)


Post Proggies and Bugs for Updates… Thank You for checking out the BETA Version.
A lot more to come.


All I ask for in return is some Rep+ and a small
so I can purchase my own Membership to develop the future of this script and for my Soul War script!

Special Credit to:
cause
shams
Runaway


-Cheers.

Estimate Total Downloads:
3850

P1nky

2012-02-01 01:23:56

Proggies:

[PHP]

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 14th, 2012 ||
||===========================||
Worked For 11 Hours, 57 Minutes and 43 Seconds
Games Played 250
||===========================||


||===========================||
|| P1nkys PestController ||
||===========================||
|| February 9th, 2012 ||
||===========================||
Worked For 9 Hours, 18 Minutes and 43 Seconds
Games Played 159
||===========================||

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 1st, 2012 ||
||===========================||
Worked For 6 Hours, 8 Minutes and 37 Seconds
Games Played 112
Won 71 Games
Lose 6 Games
||===========================||
||===========================||
||===========================||
Got 194 points
NextPlayer(False)


||===========================||
|| P1nkys PestController ||
||===========================||
|| February 4th, 2012 ||
||===========================||
Worked For 6 Hours, 12 Seconds
Games Played 107
Won 90 Games
Lose 8 Games
||===========================||
||===========================||
||===========================||

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 4th, 2012 ||
||===========================||
Worked For 6 Hours, 31 Seconds
Games Played 124
Won 159 Games
Lose 10 Games
Reward 44
||===========================||
||===========================||
||===========================||[/PHP]

Ftcg

2012-02-01 01:38:31

Got a question so do you get points for this since this doesnt attack.
Future Plans:

1) Attack Portals/Pests.

P1nky

2012-02-01 01:39:14

From: Ftcg
Got a question so do you get points for this since this doesnt attack.
Future Plans:

1) Attack Portals/Pests.


You do, the script goes to the middle and attacks the Pests around the Void.

Ftcg

2012-02-01 01:42:59

From: P1nky
You do, the script goes to the middle and attacks the Pests around the Void.

Alright, just tried one game out and its pretty decent, i'll post a report by tomorrow
somethings wrong wait let me post a pic

Ftcg

2012-02-01 01:46:22

From: Ftcg
Alright, just tried one game out and its pretty decent, i'll post a report by tomorrow
somethings wrong wait let me post a pic


<a href="http://tinypic.com?ref=oi5dg3" target="_blank"><img src="http://i39.tinypic.com/oi5dg3.png" border="0" alt="Image and video hosting by TinyPic"></a>http://tinypic.com/view.php?pic=oi5dg3&s=5
keeps on popping up like every 5 sec
sorry for double post pressed quote by accident didnt realise until a pressed

P1nky

2012-02-01 01:47:19

From: Ftcg
<a href="http://tinypic.com?ref=oi5dg3" target="_blank"><img src="http://i39.tinypic.com/oi5dg3.png" border="0" alt="Image and video hosting by TinyPic"></a>http://tinypic.com/view.php?pic=oi5dg3&s=5


Don't worry, It will disappear right when it finds the Pest or Plank.

dr kickassss

2012-02-01 01:48:16

so cool !! thanks p1nky :D

RyGuy

2012-02-01 01:57:16

JW… Why is there an xbox 360 controller in the picture for your pest controller in your siggy?

Ftcg

2012-02-01 02:02:50

Suggestions
-SRL Stats
-Faster click time on the plank to catch the people going in (Had to wait quite a while to get -another game,like a minute or so)
-imo spins way to much when searching for a pest
-gui
-More Human Not clicking next text box from npc at the start of the stage and when recieving the rewards just goes straight back into the ship. i hope this will help
Current report
Status: /~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\
Status: | SRL Randoms Report |
Status: | www.villavu.com |
Status: |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Status: \~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/
||===========================||
|| P1nkys PestController ||
||===========================||
|| February 1st, 2012 ||
||===========================||
Worked For 33 Minutes and 54 Seconds
Games Played 8
Won 4 Games
Lose 0 Games
||===========================||
||===========================||
||===========================||

deffailed

2012-02-01 03:13:56

Warning! You passed a wrong xs to a finder function: -16. That is below 0, thus out of bounds. Setting the value to 0 for now.
Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.
Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.
Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.
Error: Out Of Range at line 823
The following DTMs were not freed: [SRL - Lamp bitmap, 1]
The following bitmaps were not freed: [SRL - Mod bitmap, SRL - Admin bitmap, SRL - Flag bitmap, 3]
??

Overtime

2012-02-01 03:25:01

From: RyGuy
JW… Why is there an xbox 360 controller in the picture for your pest controller in your siggy?


Because its called 'Pest CONTROLLER!

On Topic:

Don't think I'll be testing this yet but I'm suprised this was actually released to the public.
Still using weequ's though :P

Erke

2012-02-01 03:36:06

Will this go members+ when the beta is done?

plekter

2012-02-01 03:46:19

Would be good if it shows how much points/h it has earned. I will test this for a day and if it works well, I will donate.

// Is there a way to turn the monitoring off and make it agressively click(2-3 times in a row) the plank fast so it does not miss the second game?

unteenager

2012-02-01 04:08:44

IDK why but sometimes (after like 4 games) it walks to the bank alone and gets stuck there.. and I must click next to the boat myself to keep it going

Worked For 34 Minutes and 56 Seconds
Games Played 10
Won 7 Games
Lose 3 Games

P1nky

2012-02-01 10:28:51

Seems like it needs more tweaks… I yesterday ran a 5 hr…I shall update this by tonight or tomorrow. Also my apologies for a buggy release :/… thought it was ready after a week or so of testing.

Thank You.

Bwuk

2012-02-01 10:31:47

Amazing script, I will test it asap when I get my F2P pure account member (which I do in 2 days :))

bambino

2012-02-01 10:43:12

going to test it now :D
will post back

edit: first problem i noticed
when i get the reward one of the boots it doesn't select one of those
maybe i am doing something wrong?

jcjcjc

2012-02-01 11:56:59

not working so well for me. once I get to the island I just stand in the boat til the game ends and I get nothing.

Ftcg

2012-02-01 13:05:41

Status: /~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\
Status: | SRL Randoms Report |
Status: | www.villavu.com |
Status: |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Status: | SRL Logs : 1 |
Status: \~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/
||===========================||
|| P1nkys PestController ||
||===========================||
|| February 1st, 2012 ||
||===========================||
Worked For 6 Hours, 8 Minutes and 37 Seconds
Games Played 112
Won 71 Games
Lose 6 Games
||===========================||
||===========================||
||===========================||
Got 194 points
NextPlayer(False)

Davidp123

2012-02-01 14:47:42

Going to try this out now, will post progress report soon

Erke

2012-02-01 14:55:16

Could you please give me a brief explaination what spot1 is etc is P1nky? I dont like ObjDTM's for walking at all and will rather add some SPS walking to it.
I strongly recomend anyone that will use this script to replace the fighting procedure and edit all the fixed waiting times, it isnt hard to get a nice fighting procedure with so many Combat Scripts out atm.

P1nky

2012-02-01 17:03:47

From: Erke
Could you please give me a brief explaination what spot1 is etc is P1nky? I dont like ObjDTM's for walking at all and will rather add some SPS walking to it.
I strongly recomend anyone that will use this script to replace the fighting procedure and edit all the fixed waiting times, it isnt hard to get a nice fighting procedure with so many Combat Scripts out atm.


Seems like your a hell of a scripter, you should make your own PestController with SPS… And spot1 check the code out to find what 'spot1' is.

Thank You.

Erke

2012-02-01 18:08:45

From: P1nky
Seems like your a hell of a scripter, you should make your own PestController with SPS… And spot1 check the code out to find what 'spot1' is.

Thank You.


Sorry if you got offended or whatever but I can upload a SPS path for your script if you want. And you have to agree that the fighting procedure with 'fixed' waits on 2sec is going to look bot like. I could recomend the procedure LaakeRules uses for hes script, seems to flow on nice for me atleast.

Tickyy

2012-02-01 18:37:53

Why Public P1nky :(!

P1nky

2012-02-02 01:08:44

Seems like they Updated PestController…
Will release updated Version tomorrow.


From: Tickyy
Why Public P1nky :(!


Haha , sometimes the Public/Leechers deserve a bit sympathy ;)

Overtime

2012-02-02 01:15:21

P1nky what did they update?

P1nky

2012-02-02 02:48:13

From: Overtime
P1nky what did they update?


Seems like the color in the game.
Although, I just finished updating it, will release it tomorrow.
Nothing Major.

Flight

2012-02-02 02:56:25

Sweeeeeeet job P1nky. :)

Kyle Undefined

2012-02-02 09:24:16

He has gotten my account tons of stuff :p good release man! :)

Welcome Fruity

2012-02-02 10:23:00

nice im going to test now and post a proggy. good work

jcjcjc

2012-02-02 10:27:01

Status: /~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\
Status: | SRL Randoms Report |
Status: | www.villavu.com |
Status: |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Status: \~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/
||===========================||
|| P1nkys PestController ||
||===========================||
|| February 2nd, 2012 ||
||===========================||
Worked For 53 Minutes and 28 Seconds
Games Played 11
Won 6 Games
Lose 5 Games
||===========================||
||===========================||
||===========================||

I've gotten this but I still have 0 points. After every game I get the message "The knight noticed your lack of zeal in that battle and have not presented you with any points." Which shows that it's not attacking anything for me. ]:

MaxPayne619

2012-02-02 13:53:15

Uh, happy to see this on public , otherwise I had to wait till my exams got over . But still ill try learning simba.

Gonna do the gfx banner Tomm

kyocera

2012-02-02 20:52:18

yessss it feels good to get this back to us leachers ;)


From: jcjcjc
Status: /~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\
Status: | SRL Randoms Report |
Status: | www.villavu.com |
Status: |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Status: \~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/
||===========================||
|| P1nkys PestController ||
||===========================||
|| February 2nd, 2012 ||
||===========================||
Worked For 53 Minutes and 28 Seconds
Games Played 11
Won 6 Games
Lose 5 Games
||===========================||
||===========================||
||===========================||

I've gotten this but I still have 0 points. After every game I get the message "The knight noticed your lack of zeal in that battle and have not presented you with any points." Which shows that it's not attacking anything for me. ]:


My guess is because the bot is currently not working… lol

tybkj

2012-02-03 11:00:44

Thanks for making it but it goes in a game and then does nothing.

H_N

2012-02-03 11:26:16

The scripts currently offline, check the OP.

lord onon

2012-02-04 04:48:50

hi pinky when the script will be update? thanks 4 ur efforts

P1nky

2012-02-04 07:58:34

From: lord onon
hi pinky when the script will be update? thanks 4 ur efforts

Today. Give me a few hours.


Status: /~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\
Status: | SRL Randoms Report |
Status: | [url]www.villavu.com[/url] |
Status: |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Status: | SRL Logs : 1 |
Status: \~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/
||===========================||
|| P1nkys PestController ||
||===========================||
|| February 4th, 2012 ||
||===========================||
Worked For 6 Hours, 12 Seconds
Games Played 107
Won 90 Games
Lose 8 Games
||===========================||
||===========================||
||===========================||

begginer

2012-02-04 12:47:25

Thanks a million for it.

Exilus

2012-02-04 13:19:05

if you allow me, i'd like to post some suggestions:

A world selection part, where it would allow us to select the world in which we want to PC. right now we have to do it manually so the addition of a world select would be great

a re-logging part, incase we get DCed. i noticed that on over-crowded hours, the bot has trouble clicking the boat board plank because there's so many players stacking the options, and after 5 mins of unsuccesful attempts, we get logged out. (or sometime if our connection freeze we get logged out)

I think thoses 2 features would help a lot and would be easy to implement

r4p1dz

2012-02-04 14:28:05

i love your scripts cant wait to try this when its updated

Shaddow

2012-02-04 15:06:55

Has the update came yet? Btw great script :)

P1nky

2012-02-04 20:03:33


||===========================||
|| P1nkys PestController ||
||===========================||
|| February 4th, 2012 ||
||===========================||
Worked For 6 Hours, 31 Seconds
Games Played 124
Won 159 Games
Lose 10 Games
Reward 44
||===========================||
||===========================||
||===========================||
give me couple mins

P1nky

2012-02-04 20:26:32

Version B has been released.

-Cheerz-

phantom1

2012-02-05 01:33:18

I think its outdated. When it trys to get on the plank to aboard the ship it cant click the plank it just clicks all around it.

vcheckv

2012-02-05 01:56:59

I'm very impressed with this script, first time running it and an AMAZING progress report. Ill be using this alot. The next time I get spare gold your the first one ill look at.

 Status: /~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\
Status: | SRL Randoms Report |
Status: | [url]www.villavu.com[/url] |
Status: |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Status: | SRL Logs : 1 |
Status: \~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/
||===========================||
|| P1nkys PestController ||
||===========================||
|| February 5th, 2012 ||
||===========================||
Worked For 6 Hours, 2 Minutes and 0 Seconds
Games Played 108
Won 144 Games
Lose 13 Games
Reward 342
||===========================||
||===========================||
||===========================||


P1nky

2012-02-05 02:07:43


||===========================||
|| P1nkys PestController ||
||===========================||
|| February 5th, 2012 ||
||===========================||
Worked For 4 Hours, 5 Minutes and 5 Seconds
Games Played 74
Won 63 Games
Lose 4 Games
Reward 49
||===========================||
||===========================||
||===========================||

bechsgaard

2012-02-05 04:20:24

hey, im new. Im trying to familiarize myself with the bots before i attempt to make my own and i cant seem to get any to run. everything will go fine, but when the client loads up nothing happens, ive tryed searching on the forums with no luck, please help, everything is updated

vcheckv

2012-02-05 04:27:59

From: bechsgaard
hey, im new. Im trying to familiarize myself with the bots before i attempt to make my own and i cant seem to get any to run. everything will go fine, but when the client loads up nothing happens, ive tryed searching on the forums with no luck, please help, everything is updated


add me on skype, 'vcheckv' and ill help you over teamviewer iv you'd like.

tybkj

2012-02-05 04:44:57

i am running it now it works flawless. Only the win-counter kinda got fucked up. I have played 5 games won all buy it says 2 won.

RiD

2012-02-05 05:11:30

Can this script run on the expert boat??

begginer

2012-02-05 05:30:51

Thanks for the new update ;)

jelle013

2012-02-05 08:34:05

P1nky you are my runescape hero
full void in 2 days ":))

tybkj

2012-02-05 08:34:38

my new proggy:

Worked For 3 Hours, 3 Minutes and 48 Seconds
Games Played 49
Won 45 Games
Lose 6 Games

Holako

2012-02-05 11:28:14

too slow in novice boat and doesn't run alot of time for me hope u update soon or give a fix :)
thanks

Holako

2012-02-05 11:33:41

From: tybkj
my new proggy:

Worked For 3 Hours, 3 Minutes and 48 Seconds
Games Played 49
Won 45 Games
Lose 6 Games


which boat?
i'm having problems with novice boat

Jhangir

2012-02-05 11:39:34

Mashallah

P1nky

2012-02-05 11:42:46

From: bechsgaard
hey, im new. Im trying to familiarize myself with the bots before i attempt to make my own and i cant seem to get any to run. everything will go fine, but when the client loads up nothing happens, ive tryed searching on the forums with no luck, please help, everything is updated


Did you fill in 'DeclarePlayers'? which is where you type your runescape username and password?

From: tybkj
i am running it now it works flawless. Only the win-counter kinda got fucked up. I have played 5 games won all buy it says 2 won.

Will get that fix next update :)

From: RiD
Can this script run on the expert boat??

no.
From: jelle013
P1nky you are my runescape hero
full void in 2 days ":))

Why thank you Sir.
From: Holako
too slow in novice boat and doesn't run alot of time for me hope u update soon or give a fix :)
thanks

what part is slow?

From: Jhangir
Mashallah

jazakallah

btw proggie overnight:

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 5th, 2012 ||
||===========================||
Worked For 6 Hours, 1 Minutes and 6 Seconds
Games Played 112
Won 111 Games
Lose 19 Games
Reward 22
||===========================||
||===========================||
||===========================||

phantom1

2012-02-05 11:44:53

Pinky i tried the version it cant cross the bride to get on the boat. The other version kinda works it willl go fight but only up by the void and it wont get 500 because its too slow to attack the shifters before everyone else.

P1nky

2012-02-05 12:04:11

From: phantom1
Pinky i tried the version it cant cross the bride to get on the boat. The other version kinda works it willl go fight but only up by the void and it wont get 500 because its too slow to attack the shifters before everyone else.


I'd like you to try this:
http://paste.villavu.com/show/1976/

tell me how it goes.

r4p1dz

2012-02-05 12:11:20

can somebody help me how do i fix this error?


P1nky

2012-02-05 12:18:55

From: r4p1dz
can somebody help me how do i fix this error?



Go through each step by step:
http://villavu.com/forum/showthread.php?t=57883

r4p1dz

2012-02-05 12:28:57

From: NickMystre
Check this out …

Quote:
Exception: Access violation at line 101

Now, I've personally never run into this nor have I seen it, but it appears to be caused by not having Java installed.

All you need to do is follow YoHoJo's guide here (http://villavu.com/forum/showthread.php?p=848708) , and that will walk you through on how to fix this error. Yes, I know it talks about fixing the "lag" issue with SMART, but they are the exact same steps to solve the error above.

Also, I've heard that running Simba as Admin or a directory that doesn't require Admin rights helps with this issue.





tldr ; you need to have java 6, i had java 7 haha oops il run this now and post proggies as i get them thank you for helping me

phantom1

2012-02-05 13:02:51

From: P1nky
I'd like you to try this:
http://paste.villavu.com/show/1976/

tell me how it goes.

It works better. It will aboard it but the color for the blank is off because it will click the dock leg going into the water.

butterface

2012-02-05 13:05:20

when i put him next to the boat all it says when i start the script is

Exception in Script: Unable to find file 'srl\srl.simba' used from ''
Exception in Script: Unable to find file 'srl\srl.simba' used from ''
Exception in Script: Unable to find file 'srl\srl.simba' used from ''
Exception in Script: Unable to find file 'srl\srl.simba' used from ''

help?

MaxPayne619

2012-02-05 13:11:27

ya P1NKY i need features of your script to make banner

mashallah , indeed nice script!

can u get a screenshot of it too so i can put in gfx banner!

butterface

2012-02-05 14:05:21

got everything working very nice script running well :D

FloppyWien3r

2012-02-05 16:08:03

Say – just had it going for 2 hours.. Great script!
But at line 343 – this happens now

345: Text := Replace(Text, '?', '.');


[Error] (346:34): Invalid number of parameters at line 345
Compiling failed.

butterface

2012-02-05 16:20:25

new problem after a while it says this

Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now

Exilus

2012-02-05 17:49:43

great script, except i can't seem to run this more than 1 hour, when i arrive in front of my PC after 2-3 hours im at the login lobby page and nothing's happening.


upon re-logging in im already in the boat.
Wtf happend? how was i logged out?


If you could include a auto-relog-in that would really be awesome.

Exilus

2012-02-05 19:14:10

Okay i watched it, and after 47 mins of running, the bot suddenly decided (in the middle of the PC game) to click "log out to lobby". it said it couldn't log out because my char wasn't out of combat for 10 mins. then it waited a bit, clicked again and i was logged out to the lobby.


What might be causing this and how can i disable it?


(sorry bout double post :S)

P1nky

2012-02-05 19:53:07

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 5th, 2012 ||
||===========================||
Worked For 5 Hours, 23 Minutes and 0 Seconds
Games Played 101
Won 149 Games
Lose 35 Games
Reward 23
||===========================||
||===========================||
||===========================||


Guys, watching the Super Bowl, I got a update already ready to go, just let me finish watching this :)

Btw guys glad to announce, that SRL stats indicate that in 1 day this script has gotten up to 7 days. :D

killuminati

2012-02-05 21:58:34

yo brother it logs me out and says found dead after every match, any fixes?

P1nky

2012-02-06 03:09:19

From: killuminati
yo brother it logs me out and says found dead after every match, any fixes?


Let me try to die first in the game :X Defense too high lols, I'll try to go to the expert boat :) If not than I'll have to borrow a account from someone.

MaxPayne619

2012-02-06 06:06:07

ya P1NKY i need features of your script to make banner

mashallah , indeed nice script!

can u get a screenshot of it too so i can put in gfx banner!

P1nky

2012-02-06 10:09:38

From: MaxPayne619
ya P1NKY i need features of your script to make banner

mashallah , indeed nice script!

can u get a screenshot of it too so i can put in gfx banner!


MaxPayne, couldn't find your thread yesterday, and I am too lazy to get screenies :/ so either google or please do it for me :)
Although not much to say about this script :/

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 6th, 2012 ||
||===========================||
Worked For 5 Hours, 34 Minutes and 11 Seconds
Games Played 83
Won 90 Games
Lose 23 Games
Reward 20
||===========================||
||===========================||
||===========================||

iee77

2012-02-06 10:24:40

Status: /~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\
Status: | SRL Randoms Report |
Status: | www.villavu.com |
Status: |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Status: \~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/
||===========================||
|| P1nkys PestController ||
||===========================||
|| February 6th, 2012 ||
||===========================||
Worked For 1 Hours, 35 Minutes and 47 Seconds
Games Played 29
Won 21 Games
Lose 4 Games
Reward 8
||===========================||
||===========================||
||===========================||
I see there are some problems.
Games played 29
Won 21
Lose 4
21+4 = 25… That doesnt make any sence… and i got like 54 points but it says 8.
But great script!
I hope i will learn this one day :)

P1nky

2012-02-06 10:25:11

Version [C] is now Out.

-Cheers

P1nky

2012-02-06 10:26:11

From: iee77
Status: /~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\
Status: | SRL Randoms Report |
Status: | www.villavu.com |
Status: |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Status: \~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/
||===========================||
|| P1nkys PestController ||
||===========================||
|| February 6th, 2012 ||
||===========================||
Worked For 1 Hours, 35 Minutes and 47 Seconds
Games Played 29
Won 21 Games
Lose 4 Games
Reward 8
||===========================||
||===========================||
||===========================||
I see there are some problems.
Games played 29
Won 21
Lose 4
21+4 = 25… That doesnt make any sence… and i got like 54 points but it says 8.
But great script!
I hope i will learn this one day :)


Yeah, already know about that problem, I will fix it in Version [D]

MaxPayne619

2012-02-06 12:05:21

Ya P1nky thread in my sig (FREE GFX link in big letters:)

seems like the script gets too less points, hope it becomes more efficient in further releases!

Exilus

2012-02-06 12:15:45

Sorry to insist but p1nky, could you tell me why does your script logs me out after 1-2 hours? it goes by itself to click on the logout button and repeats the procedure every 5 sec until im logged out, even in the middle of a PC game.

thomasmacey

2012-02-06 12:36:42

hey pinky just thought id give you some feedback on your amazing script :D sometimes when it finds the gangplank and walks into the boat it still thinks it needs to find the gangplank whilst your in the boat and so keeps clicking it which isn't a huge issue just thought you might like to know :) thanks for a great script though

laakerules

2012-02-06 12:43:25

Nice job on this p1nky, looks good I was planning on doing this one. But this looks good man. I'm gonna have to do another minigame sometime then how did you get the URL pics in your sig?

Irl

2012-02-06 13:43:59

I ran this script a week ago and had a bit of trouble with it, very excited to try the new version. -thanks

phantom1

2012-02-06 15:01:58

Trying version C atm. Will post a proggie soon :P

P1nky

2012-02-06 19:01:06

From: thomasmacey
hey pinky just thought id give you some feedback on your amazing script :D sometimes when it finds the gangplank and walks into the boat it still thinks it needs to find the gangplank whilst your in the boat and so keeps clicking it which isn't a huge issue just thought you might like to know :) thanks for a great script though

Version C fixed that :)

From: Exilus
Sorry to insist but p1nky, could you tell me why does your script logs me out after 1-2 hours? it goes by itself to click on the logout button and repeats the procedure every 5 sec until im logged out, even in the middle of a PC game.


Explain a little bit more, never seen that problem :/ btw what does the debug say?

edgarmontes2

2012-02-06 19:05:43

could you please make your script log into one of the pest control worlds so we dont have to manually log in?this would be very much appreciated.

botter5214

2012-02-06 19:31:10

From: edgarmontes2
could you please make your script log into one of the pest control worlds so we dont have to manually log in?this would be very much appreciated.


lol lazy much?

xeonzor

2012-02-06 20:40:34

I'll give this a go! Will try to update you with a mad proggie tomorow. ;p

10coins

2012-02-06 20:54:00

prayer suport?

phantom1

2012-02-06 20:58:57

Make it automatically log into world 53 and it still has a bit trouble crossing the plank, It sometimes does not get 500+. you should make it so it just runs around killing anything you will get 1500+ each. Because once you get the whole community running this all in one world the one platform will be crowded. It's already.

xeonzor

2012-02-06 21:01:34

Haha, I just had to post now. Laughing my ass off at all these people walking to the same damn tree. people with 99rc that just don't give a fuck!

I'm amazed at what can be achieved by color recognition, wow!

It's running flawless!

fearlesskiller

2012-02-06 21:09:48

Progress report doesnt work properly only games played does. But thanks bro ill finally get full void on my ranged tank :D

edgarmontes2

2012-02-06 21:25:34

From: xeonzor
Haha, I just had to post now. Laughing my ass off at all these people walking to the same damn tree. people with 99rc that just don't give a fuck!

I'm amazed at what can be achieved by color recognition, wow!

It's running flawless!


He's right, if the script could click along the middle, it would be much less obvious.
(and it looks like your script is getting popular, i've seen like 5 others running to the same spot every time!)

P1nky

2012-02-06 22:42:03

From: 10coins
prayer suport?


Done in Version [D] (will release tomorrow) & guys thanks for all the support and suggestions/advice, I do read all the posts and try my best to keep everything in mind. I will add a randomness of walking to the Void. Also, people who do not manage 500+ that is due to your account being 'weak', although in the future I will make it run around killing Pests/Portals, instead of just going to the middle. Because I do see a lot of Defenders now, and proud to say that they are mostly people from SRL using this script.

Thank You Mates

-Cheerz

plekter

2012-02-07 03:53:12

My pure has 80+ att/str and it still has some issues getting the 500+ sometimes.

P1nky

2012-02-07 09:18:45

Status: /~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\
Status: | SRL Randoms Report |
Status: | [url]www.villavu.com[/url] |
Status: |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Status: | SRL Logs : 1 |
Status: \~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/
||===========================||
|| P1nkys PestController ||
||===========================||
|| February 7th, 2012 ||
||===========================||
Worked For 6 Hours, 51 Seconds
Games Played 103
Won 19 Games
Lose 10 Games
Reward 43
Points Earned 19
||===========================||
||===========================||
||===========================||

From: plekter
My pure has 80+ att/str and it still has some issues getting the 500+ sometimes.


Does your pure ever end up dying?

Holako

2012-02-07 09:29:27

[C] Works very well but u want to make it click on board fast after every game so it join every game hope u understood me my English is bad :P

xeonzor

2012-02-07 10:04:15

Woke up with 202 commendations!

Other then the progress report I did not notice any flaws, but you were already aware of this.

Stray Bullets

2012-02-07 12:12:45

Thanks for this, can finally finish off maxing melee now, and work on getting back my elite void.

cause

2012-02-07 14:25:24

Running this now, reduced some of your waits and added randomness. By reducing the waits I get my 500 in easy now :). Btw there must be at least 10 people running this currently in the big PC world.
EDIT: also in your procedure Plank I added the "you can't reach that" for when it doesn't detect it's in the boat and stands there clicking the plank over and over (quite a bit more for me since I lowered the waits significantly
Until(FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('You can''t reach that'));

denante3

2012-02-07 17:08:29

i keep losing sense it just stays in the middle :/

denante3

2012-02-07 17:09:37

how can i make this work better can some please help?

shadowmarkus

2012-02-07 18:14:27

From: denante3
how can i make this work better can some please help?


You can read guides, or tell p1nky what kind of improvements you want, and if you're lucky he will disregard that you're a giant leecher, and fix them for you.

Exilus

2012-02-07 20:07:54

Ive replaced every
"if X then Nextplayer(false)" by
"If X then nextplayer(true)"

and now it runs flawlessly. it used to exit to login randomly and i could never bot more than 1 hour at once, now its fixed.


Incase anyone else has this problem, this is the fix i found.

P1nky

2012-02-08 01:31:33

Expect a Update tomorrow guys, that will include:
  • Faster Pest Finding
  • Quick Prayer Option
  • Faster Script Overall
  • Fix on the Random Reward Issue(those 3 lame boots)
  • & lots more!

-Cheers!

Pl4nK

2012-02-08 01:34:56

Until(FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('You can''t reach that'));

Where would that go cause?
Or anyone for that matter. Cannot get it to run for any longer than an hour

plekter

2012-02-08 05:41:21

From: P1nky
Does your pure ever end up dying?
So far I have not seen it happen.

MaxPayne619

2012-02-08 10:01:21

[LEFT]P1NKY's PEST CONTROL[/LEFT]

leave my link in ur thread http://villavu.com/forum/showthread.php?t=73952

so ppl can see and benifit from my free service :)

Merky Ace

2012-02-08 12:19:24

Look's a real nice script. Boards boat fine however does not attack.

Following message;

Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.
Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.
Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.
Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.
Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.
Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.
Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.
Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.
Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.
Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.
Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.
Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.
Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.


Any solution?

Again, looks a real nice script.. I'm probably doing something wrong..

Thanks mate

uujee4

2012-02-08 15:08:26

[Error] (2:1): 'BEGIN' expected at line 1
Compiling failed.
what should I do ?

haxine

2012-02-08 15:11:15

which attachment should i download? beta, beta(b) or the third???

haxine

2012-02-08 16:04:50

and it wont seem to work on any boats except for 40+

P1nky

2012-02-08 18:06:25

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 8th, 2012 ||
||===========================||
Worked For 5 Hours, 44 Minutes and 58 Seconds
Games Played 118
||===========================||


Version [D] Is Now Out… Enjoy
  • Faster Pest Finding
  • Quick Prayer Option
  • Faster Script Overall
  • Fix on the Random Reward Issue(those 3 lame boots)
  • & lots more!

brentrobbins

2012-02-08 18:16:58

lol so just throwing this out there, i left the script running today, and came back a while later with it logged out, i logged back in and my character was in misthalania at the top of the castle and had withdrawn a lunar staff and rune hatchet from my bank. these objects were in very opposite areas submerged in my bank. and the lunar staff had been equipped….

P1nky

2012-02-08 18:23:05

From: brentrobbins
lol so just throwing this out there, i left the script running today, and came back a while later with it logged out, i logged back in and my character was in misthalania at the top of the castle and had withdrawn a lunar staff and rune hatchet from my bank. these objects were in very opposite areas submerged in my bank. and the lunar staff had been equipped….


My code does not open the bank and withdraw items and wield anything, nor does it teleport anywhere…

brentrobbins

2012-02-08 18:28:45

lol well i assumed maybe a random might have gotten me to misthalania. Also it was the [c] script that i was running, and i logged on and had those items in my inventory, when they werent before…..so i just thought it was very strange and should tell you. I dont know how all those things could have happened…but thats how i found it.

i mean ive read through the code quite a few times, and there is nothing in it that would do that, but as i think of it now, i thought i remembered a small part of the script that had something to do with the bank, but that again, would have been in the [c] version.

P1nky

2012-02-08 18:30:52

From: brentrobbins
lol well i assumed maybe a random might have gotten me to misthalania…..but it was the [c] script, and i logged on and had those items in my inventory, when they werent before…..so i just thought it was very strange and should tell you. I dont know how all those things could have happened…but thats how i found it.


That's quite unusual, let me know if it happens again Mate.

brentrobbins

2012-02-08 18:39:40

yeah, i just found the spot on the c version where it could have something to do with the bank.

// If (FindObjCustom(x,y,['Bank','nk','booth','oot'], [1717052], 5)) Then

but as you can see it was set to ignore. I may have accidently deleted the slash marks when editing some and thus activated this part, though i dont know what this line would have been able to do by itself.

edgarmontes2

2012-02-08 23:32:42

Quick prayer does not activate, it just fights normal.

P1nky

2012-02-09 00:20:57

From: edgarmontes2
Quick prayer does not activate, it just fights normal.


Thanks, I shall fix that on next Update.

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 8th, 2012 ||
||===========================||
Worked For 5 Hours, 18 Minutes and 43 Seconds
Games Played 109
||===========================||

emopenguin91

2012-02-09 00:27:45

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 8th, 2012 ||
||===========================||
Worked For 5 Hours, 59 Minutes and 28 Seconds
Games Played 122
Won 81 Games
Lose 23 Games
Reward 8
||===========================||
||===========================||
||===========================||


This was with [C] thanks so much for this :D

Polar Bearz

2012-02-09 00:40:55

From: Tickyy
Why Public P1nky :(!


inb4movedtoomembers+ lol

i'll test this tomorrow way too tired and have hw too do. hopefully i can learn how too script as well as alot of people here. :)

haxine

2012-02-09 01:38:31

for some reason the bot will perform all tasks within pc but it wont cross the plank intp the boat to get to pc how can i fix this?? at first it would, but now it wont

Stray Bullets

2012-02-09 04:41:21

Version [D] seems to be working well so far. Significantly faster then the last version I was using. I can't seem to get it to board any other lander but Novice though. The gangplanks are all identical, so in theory shouldn't it work on all landers? Only other problem I noticed is that quick curses/prayers aren't working.

EDIT: Quick curses seem to be working now… strange. Some games it won't even attempt to turn them on, but I just watched it activate deflect from melee. So kinda buggy, but they are working to some extent.

EDIT #2: Getting kicked out of more games then I'm winning. I'd say every 8 out 10 games I'm kicked. Problem seems to be that I never move. So if a pest doesn't spawn in my area, I just stand there rotating the camera a bit, doing no damage. I have Faster500 set to true, wondering if this is actually hurting me. If set to false, will it just defend knight? As of now, it's entering the north gate, and just kind of standing in that location. Will try it with Faster500 set to false in a bit.

Chrome

2012-02-09 06:41:20

Will post a proggy

Novain

2012-02-09 09:49:53

Isn't botting pest control super high banrate?

emopenguin91

2012-02-09 10:05:51

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 9th, 2012 ||
||===========================||
Worked For 9 Hours, 18 Minutes and 43 Seconds
Games Played 159
||===========================||

This is with [D], thanks so much pinky

quazzymodem

2012-02-09 10:34:17

Working great for me (both c and d) I actually just logged into a 120+ world by accident on my 100 ahahaha :)

haxine

2012-02-09 12:37:37

i cant get this script to work for long periods of time, when i first downloaded c it worked fine but i cant seem to figure it out, when it finishes with a game it cant seem to find the bridge to get back in the ferry. some1 please help.

tybkj

2012-02-09 13:24:17

I am currently using your script for long periods. When i use your latest version, i get this message: Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now. I walks just out of the gate and then doesn't attack any monsters. I don't know how to fix this for you perhaps you can take a look yourself?

edit: found out this only occurs when using a crossbow.

double edit: This problem occurs when your weapon doesn't got a special attack. No need to fix if you don't want too.

P1nky

2012-02-09 15:59:26

From: Novain
Isn't botting pest control super high banrate?

Try it out and let me know :)

From: emopenguin91
||===========================||
|| P1nkys PestController ||
||===========================||
|| February 9th, 2012 ||
||===========================||
Worked For 9 Hours, 18 Minutes and 43 Seconds
Games Played 159
||===========================||

This is with [D], thanks so much pinky


Lovely report, added to 'Proggies'.

From: haxine
i cant get this script to work for long periods of time, when i first downloaded c it worked fine but i cant seem to figure it out, when it finishes with a game it cant seem to find the bridge to get back in the ferry. some1 please help.


Are you using [D] now?

From: tybkj
I am currently using your script for long periods. When i use your latest version, i get this message: Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now. I walks just out of the gate and then doesn't attack any monsters. I don't know how to fix this for you perhaps you can take a look yourself?

edit: found out this only occurs when using a crossbow.

double edit: This problem occurs when your weapon doesn't got a special attack. No need to fix if you don't want too.


Ignore that message.

fearlesskiller

2012-02-09 16:19:29

Impossible to play 9 hours, rs client crashes after every 6 hours

Chrome

2012-02-09 16:55:40

From: fearlesskiller
Impossible to play 9 hours, rs client crashes after every 6 hours


CRASHSMART search it

qingqinghd

2012-02-09 19:12:18

one quest,it always miss the center than do nothing~can u add a lost then go back center

Why Say Yes

2012-02-09 19:22:14

It cannot cross the gang plank it tries to find "cross gangplank" but due to a recent update everything is "hidden" so it does not see it and fails

P1nky

2012-02-09 20:05:32

From: qingqinghd
one quest,it always miss the center than do nothing~can u add a lost then go back center



From: Why Say Yes
It cannot cross the gang plank it tries to find "cross gangplank" but due to a recent update everything is "hidden" so it does not see it and fails



Hmmm… Let me check when I get home.

edgarmontes2

2012-02-10 11:48:06

Thanks to your script I got all void items! (except deflector because i suck at conquest lol)

P1nky

2012-02-10 13:14:55

From: edgarmontes2
Thanks to your script I got all void items! (except deflector because i suck at conquest lol)


Congrats :).

kodasbean

2012-02-10 15:14:03

For me it seems it can't get my points past 500 idk if this is just me or should i change versions.

P1nky

2012-02-10 17:21:13

From: kodasbean
For me it seems it can't get my points past 500 idk if this is just me or should i change versions.


Use [D].

Epicbotter

2012-02-10 18:53:08

Doesn't work for me. :'( Simply doesn't log in. The first i ran it, the thing that happened to the other guy happened to me. It run through the gate displaying error messages and doing nothing. But now, It simply loads SMART, and that is it it. Any possible solutions?

emopenguin91

2012-02-10 19:34:17

From: kodasbean
For me it seems it can't get my points past 500 idk if this is just me or should i change versions.

you can only have 500 points max, it doesnt go over, you have to spend the rest now :tongue:

Paradoxium

2012-02-10 22:47:44

thanks! great script! just one suggestion…I took out RandomButton because I feel like it makes it look more bot like…if im waiting on the boat i just chill lol…just a suggestion :D, maybe something more human would be to shift cam every 30sec +random 45… you know?

MaxPayne619

2012-02-10 22:55:47

[CENTER][COLOR="DeepSkyBlue"]||===========================||
|| P1nkys PestController ||
||===========================||
|| February 9th, 2012 ||
||===========================||
Worked For 2 Hours, 30 Minutes and 15 Seconds
Games Played 44
||===========================||[/COLOR][/CENTER]


Congrats ! , P1nky script passed the most no. of commendations earned than the members script :), eventhough the script gives me less points per hour, it is at least giving me attack xp too :)

P1nky

2012-02-11 02:36:20


||===========================||
|| P1nkys PestController ||
||===========================||
|| February 10th, 2012 ||
||===========================||
Worked For 6 Hours, 1 Minutes and 13 Seconds
Games Played 121
||===========================||

MaxPayne619

2012-02-11 04:02:23

[CENTER][COLOR="DarkOrchid"]||===========================||
|| P1nkys PestController ||
||===========================||
|| February 11th, 2012 ||
||===========================||
Worked For 4 Hours, 34 Minutes and 11 Seconds
Games Played 79
||===========================||

Commendations Earned: 54 (Novice Boat)[/COLOR][/CENTER]

Red Light

2012-02-11 06:34:29

The script wont work for me it runs and then it wont cross the gangplank ?? :S

Instagationz

2012-02-11 12:14:03

Im having a problem with it, It runs towards the gate and never attacks anything half the time. Is there any way to fix this?

Irl

2012-02-11 12:55:22

Havent tried "D" yet ,super excited.

tybkj

2012-02-11 13:08:19

From: Instagationz
Im having a problem with it, It runs towards the gate and never attacks anything half the time. Is there any way to fix this?

I already found this problem it is cause you dont have a weapon that can use a special attack.

promisis

2012-02-11 13:47:57

When i start it it just runs south west and stops at the tower?

Instagationz

2012-02-11 15:48:12

From: tybkj
I already found this problem it is cause you dont have a weapon that can use a special attack.


Thanks this did help!

hash.burnswell

2012-02-11 15:51:28

Man this script works so good it's fun to watch.:norris:

Barnzy

2012-02-11 17:25:48

It's a nice script, exept it just spams out of bounds you passed a ys etc etc, for ages non stop, is there a fix for this?

Also, just a suggestion but can you make it explore the whole of pest control rather thn just where the void is?

love you. <3

;)

keian

2012-02-11 19:42:05

how do i download this?

cezzq

2012-02-11 21:02:49

From: Barnzy
It's a nice script, exept it just spams out of bounds you passed a ys etc etc, for ages non stop, is there a fix for this?

Also, just a suggestion but can you make it explore the whole of pest control rather thn just where the void is?

love you. <3

;)


yes just change the SpecialAttacks = True; to SpecialAttacks = False; then it should work works for me tho

hash.burnswell

2012-02-11 21:04:13

From: keian
how do i download this?


The links for download are always(I think) on the first post at the bottom.

dvsilverwing

2012-02-11 21:57:36

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 11th, 2012 ||
||===========================||
Worked For 5 Hours, 35 Minutes and 28 Seconds
Games Played 120
||===========================||

Left it unattended, when I got back it had JUST disabled SMART (literally, character was standing there not even logged out yet) and I was left with 210 Tokens as well as 30k more Strength XP than when I had left it. This is a dope script, and with the features you plan to add there's nothing I can do to critique it: the only possible problems with the script (possibly not getting your 500 damage (doubtful), not clicking/attacking, etc.) are pretty much just user error in their character or script setup. If what is planned is actually added, I can honestly say this script will be essentially perfect. However, I did notice a decent amount people on each boat going to the exact same points on the map I was, as well as protecting the void knight like I was, so I'm assuming this script might eventually overrun Pest Control…

KillaKev

2012-02-12 01:13:58

Love your script P1nky. Keep up the awesome work and can't wait to see the future updates you have planned.

Barnzy

2012-02-12 05:22:25

From: cezzq
yes just change the SpecialAttacks = True; to SpecialAttacks = False; then it should work works for me tho



I use a rapier but I have already set the spec to false and does the same thing.


My laptop is just fucked i think, everythings playing up recently

P1nky

2012-02-12 10:22:01

From: Barnzy
I use a rapier but I have already set the spec to false and does the same thing.


My laptop is just fucked i think, everythings playing up recently


What problems are you having?

P1nky

2012-02-12 12:22:28

I am looking for someone to lend me a p2p account, I will get it many points/exp/cash, just let me use it and keep this script updated.

Based Swag

2012-02-12 13:09:02

From: Barnzy
It's a nice script, exept it just spams out of bounds you passed a ys etc etc, for ages non stop, is there a fix for this?

Also, just a suggestion but can you make it explore the whole of pest control rather thn just where the void is?

love you. <3

;)


I have the same problem, and I changed it to specialattack = false..

P1nky

2012-02-12 13:12:03

From: Based Swag
I have the same problem, and I changed it to specialattack = false..


I do not have a account atm to check that problem out.

Chrome

2012-02-12 13:20:39

From: P1nky
I do not have a account atm to check that problem out.

I have an account pm me

Based Swag

2012-02-12 13:28:53

From: P1nky
I do not have a account atm to check that problem out.


Warning! You passed a wrong ys to a finder function: -5. That is below 0, thus out of bounds. Setting the value to 0 for now.

If that helps.

we r rangerz

2012-02-12 16:04:02

how do i download this ?? or whatever.

emopenguin91

2012-02-12 16:49:52

so, i love everything about this script, ive leveled str 2 time and def 5 since i started using it and i got full void, thanks a lot p1nky :) but it keeps clicking of the little stand the knight is on and so it just stands there not attacking anything so i dont get any points? somtimes it will stay on the tower but lately its been going off, i was wondering if anyone knows how to fix this or is having the same problem?

Barnzy

2012-02-12 17:11:37

From: P1nky
I do not have a account atm to check that problem out.


Hey mate, you can use my account if you want, 104 cb 97 str 94 mage 82 attack 71 def

if you wanna use it let me know, it's the least I can do.

Regards

Ice3323

2012-02-12 17:26:19

Im getting spammed progress reports. Is it supposed to do that? And sometimes it clicks away from the centre of the island while in the minigame (then i get the out of bounds error). Great script though!

phantom1

2012-02-12 21:05:51

Hey right before the crosswalk sometimes people post clan vex's and the bot clicks it and does not know how to get out of it. Add if it gets into that random that it clicks out of it.

Batteries

2012-02-12 22:12:29

I am just loving this script! havent had any problems with it yet :)

P1nky

2012-02-12 23:10:57

Thank You to everyone who sent me a pm of there account or were willing to lend me it, I will Use one of the account and will notify the User.
If you did not get a PM, that means I am not going to use your account.

Thanks once again!

tofurocks

2012-02-13 04:26:52

Do you still need accounts?
You can use mine any time it has adequate statistics.

xtrapsp

2012-02-13 04:43:42

From: Ftcg
<a href="http://tinypic.com?ref=oi5dg3" target="_blank"><img src="http://i39.tinypic.com/oi5dg3.png" border="0" alt="Image and video hosting by TinyPic"></a>http://tinypic.com/view.php?pic=oi5dg3&s=5
keeps on popping up like every 5 sec
sorry for double post pressed quote by accident didnt realise until a pressed


I dont know what is wrong with you but when I clicked that I saw a mangled up… something… it looked quite…y'know…

On Topic:

Testing now :D Hope it works

Grihmm

2012-02-13 05:03:45

I will try your script in just a few moments. If it works, I don't have to pay for my prayer. :D 95 prayer goal, about 4k games. I will donate if it works well for me.

Edit: I'm still running, so no proggy yet.

This script is very good, and works.

Some things to maybe think about improving:
-Make the walk have more destinations. Maybe you could make a half dozen possible steps towards the center, and have one randomly picked each game so you don't take the same route a lot.
-Spam click the plank after a game to get in the boat faster

Grihmm

2012-02-13 07:11:07

Delete post.

MaxT

2012-02-13 19:29:16

It is not moving when i run the script not even clicking gangplank

tofurocks

2012-02-13 21:52:28

1 day of owning this script, Veteran boat


muchogrande

2012-02-13 23:40:26

I keep getting this error

[Error] (11:3): Semicolon (';') expected at line 10
Compiling failed.

P1nky

2012-02-14 02:02:59

Mates, give me couple days, I'll update it for y'all , have quite a bit school load on me.
Just few more days Mates.

jekkupatteri

2012-02-14 03:17:47

very nice man! wonderfull script! got full void, + 200 points for elite :) in 3 days. IT gave some cordinate error but script worked anyway so no big deal :P longest proggy was like 10hrs but then my smart crashed so thx man ;)

Grihmm

2012-02-14 08:10:13

I fixed the standards up a bit and I noticed you were missing an end; or two in the main loop at the end so I put those in. Now that I have the little problem of logging out every time I see a mod under control I can give you a few proggies.

program PestControllerBETA;
{$DEFINE SMART}
{$DEFINE CRASHSMART}
{$i srl\srl.simba}

//P1nky's PestController
//BETA Version

const
SpecialAttacks = False;
QuickPrayer = True; //Make sure to have Quick Prayer Set!
Faster500 = False; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]


procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;


var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate,DTMSPOT2,DTMSPOT3,DTMSPOT, x, y, counter : integer;


Procedure FindRandoms;
Begin
If Not (LoggedIn) Or Not (Players[CurrentPlayer].Active) Then
NextPlayer(True);
FindNormalRandoms;
wait(Random(100) + 20);
FindLamp('Summoning');
End;



function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;

dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;

dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;

dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;

dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;

dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;


function Step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 901;
dtmMainPoint.y := 138;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 65535;
dtmMainPoint.Tolerance := 30;

dtmSubPoints[0].x := 901;
dtmSubPoints[0].y := 138;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 65535;
dtmSubPoints[0].Tolerance := 30;

dtmSubPoints[1].x := 902;
dtmSubPoints[1].y := 133;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 2714760;
dtmSubPoints[1].Tolerance := 30;

dtmSubPoints[2].x := 907;
dtmSubPoints[2].y := 139;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2714760;
dtmSubPoints[2].Tolerance := 30;

dtmSubPoints[3].x := 901;
dtmSubPoints[3].y := 145;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2714760;
dtmSubPoints[3].Tolerance := 30;

dtmSubPoints[4].x := 896;
dtmSubPoints[4].y := 137;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 2714760;
dtmSubPoints[4].Tolerance := 30;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;


function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;

dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;

dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;

dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;

dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;

dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;



function Left: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 665;
dtmMainPoint.y := 181;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1466931;
dtmMainPoint.Tolerance := 15;

dtmSubPoints[0].x := 665;
dtmSubPoints[0].y := 181;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1466931;
dtmSubPoints[0].Tolerance := 15;

dtmSubPoints[1].x := 661;
dtmSubPoints[1].y := 176;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 2908770;
dtmSubPoints[1].Tolerance := 15;

dtmSubPoints[2].x := 671;
dtmSubPoints[2].y := 174;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2255469;
dtmSubPoints[2].Tolerance := 15;

dtmSubPoints[3].x := 665;
dtmSubPoints[3].y := 172;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2323058;
dtmSubPoints[3].Tolerance := 15;

dtmSubPoints[4].x := 658;
dtmSubPoints[4].y := 177;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3242361;
dtmSubPoints[4].Tolerance := 15;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Left1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..3] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 660;
dtmMainPoint.y := 143;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 263925;
dtmMainPoint.Tolerance := 15;

dtmSubPoints[0].x := 660;
dtmSubPoints[0].y := 143;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 263925;
dtmSubPoints[0].Tolerance := 15;

dtmSubPoints[1].x := 650;
dtmSubPoints[1].y := 139;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 5350033;
dtmSubPoints[1].Tolerance := 15;

dtmSubPoints[2].x := 652;
dtmSubPoints[2].y := 146;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 4363665;
dtmSubPoints[2].Tolerance := 15;

dtmSubPoints[3].x := 648;
dtmSubPoints[3].y := 131;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 263925;
dtmSubPoints[3].Tolerance := 15;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;


procedure LeftSpot;
begin
MakeCompass('S');
LeftGate := Left;
if DTMRotated(LeftGate, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
end;


procedure LeftPortal;
begin
MakeCompass('S');
white := Left1;
if DTMRotated(white, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
end;
//white

function NorthSpot: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..3] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 708;
dtmMainPoint.y := 160;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 393967;
dtmMainPoint.Tolerance := 15;

dtmSubPoints[0].x := 708;
dtmSubPoints[0].y := 160;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 393967;
dtmSubPoints[0].Tolerance := 15;

dtmSubPoints[1].x := 702;
dtmSubPoints[1].y := 155;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 3420468;
dtmSubPoints[1].Tolerance := 15;

dtmSubPoints[2].x := 715;
dtmSubPoints[2].y := 155;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3355448;
dtmSubPoints[2].Tolerance := 15;

dtmSubPoints[3].x := 708;
dtmSubPoints[3].y := 153;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3289141;
dtmSubPoints[3].Tolerance := 15;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Spot44: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 672;
dtmMainPoint.y := 180;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 329713;
dtmMainPoint.Tolerance := 0;

dtmSubPoints[0].x := 672;
dtmSubPoints[0].y := 180;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 329713;
dtmSubPoints[0].Tolerance := 0;

dtmSubPoints[1].x := 671;
dtmSubPoints[1].y := 156;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 6523792;
dtmSubPoints[1].Tolerance := 0;

dtmSubPoints[2].x := 667;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 5336950;
dtmSubPoints[2].Tolerance := 0;

dtmSubPoints[3].x := 678;
dtmSubPoints[3].y := 162;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 5792867;
dtmSubPoints[3].Tolerance := 0;

dtmSubPoints[4].x := 666;
dtmSubPoints[4].y := 163;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 6457999;
dtmSubPoints[4].Tolerance := 0;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;


//Portal Locs:

function YellowPortal: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 676;
dtmMainPoint.y := 179;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 65535;
dtmMainPoint.Tolerance := 15;

dtmSubPoints[0].x := 676;
dtmSubPoints[0].y := 179;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 65535;
dtmSubPoints[0].Tolerance := 15;

dtmSubPoints[1].x := 676;
dtmSubPoints[1].y := 172;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 7444128;
dtmSubPoints[1].Tolerance := 15;

dtmSubPoints[2].x := 682;
dtmSubPoints[2].y := 180;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 7312029;
dtmSubPoints[2].Tolerance := 15;

dtmSubPoints[3].x := 669;
dtmSubPoints[3].y := 178;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 7048342;
dtmSubPoints[3].Tolerance := 15;

dtmSubPoints[4].x := 676;
dtmSubPoints[4].y := 184;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 7114649;
dtmSubPoints[4].Tolerance := 15;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;


procedure TOYellow; // Directly to Yellow Portal
begin
MakeCompass('S');
Yp := YellowPortal;
if DTMRotated(YP, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(1);
end;

function RedPortal: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 778;
dtmMainPoint.y := 192;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 62719;
dtmMainPoint.Tolerance := 15;

dtmSubPoints[0].x := 778;
dtmSubPoints[0].y := 192;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 62719;
dtmSubPoints[0].Tolerance := 15;

dtmSubPoints[1].x := 778;
dtmSubPoints[1].y := 185;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 8150929;
dtmSubPoints[1].Tolerance := 15;

dtmSubPoints[2].x := 772;
dtmSubPoints[2].y := 183;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 7559818;
dtmSubPoints[2].Tolerance := 15;

dtmSubPoints[3].x := 786;
dtmSubPoints[3].y := 190;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 8418184;
dtmSubPoints[3].Tolerance := 15;

dtmSubPoints[4].x := 769;
dtmSubPoints[4].y := 188;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 7432058;
dtmSubPoints[4].Tolerance := 15;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ToRed; //Directly to Purple Portal
begin
Status('To Red');
MakeCompass('S');
Rp := RedPortal;
if DTMRotated(Rp, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(1);
end;


Procedure AttackWhite;
begin
repeat
if FindObj(x, y, 'ortal', 13217188, 15) then
MMouse(x,y,0,0);
wait(Random(100) + 20);
Mouse(x,y,0,0,false);
ChooseOption('ttack');
until(false);
end;


Procedure AttackRed;
begin
repeat
if FindObj(x, y, 'ortal', 6246545, 15) then
MMouse(x,y,0,0);
wait(Random(100) + 20);
Mouse(x,y,0,0,false);
ChooseOption('ttack');
wait(3434 + Random(244));
until(false);
end;


Procedure AttackYellow;
begin
repeat
Status('Attacking Yellow');
if FindObj(x, y, 'ortal', 3978936, 15) then
MMouse(x,y,0,0);
wait(Random(100) + 20);
Mouse(x,y,0,0,false);
ChooseOption('ttack');
wait(Random(100) + 20);
until(false);
end;


procedure SPOT1; // Toward Void.
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 20);
end;

procedure SPOT2; // Void
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(1300);
end;

Procedure AwayFromVoid;
begin
If not (DTMSPOT2 < 10) then
begin
exit;
end else
Spot2;
end;


procedure SPOT3; // Towards North Portals
begin
Status('Spot 3');
MakeCompass('S');
DTMSPOT3 := Step3;
if DTMRotated(DTMSPOT3, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
Flag;
Wait(1300);
end;

Function RewardBox : Boolean;
begin
if FindColorTolerance(x,y,986895,134,96,435,334,1) then
begin
Result := True;
Mouse(392,60,0,0,true);
Reward := Reward + 1;
end else
Result := False;
end;

procedure SPOT4; // North (Middle of Yellow/Purple)
begin
Status('Spot 4');
MakeCompass('S');
yellow := NorthSpot;
if DTMRotated(yellow, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
wait(Random(1000) + 20);
Flag;
end;

Procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
if FindNPCChatText('Congratulations!',True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned',2);
exit;
end else
if FindNPCChatText('noticed',True) or FindNPCChatText('lost.',True) then
begin
lost := lost + 1;
exit;
end else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual',True) or
FindNPCChatText('Congratulations!',True) or
FindNPCChatText('knights',True) or
FindNPCChatText('lost.',True) or
FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or
FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
Begin
Result := True;
Writeln('NPC Message Detected!');
If (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
//wait(Random(200) + 20);
Status('NPC Message');
MMouse(x,y,0,0);
wait(Random(200) + 20);
Mouse(x,y,0,0,true);
WinOrLose;
end else
Result := False;
end;


procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
If Not (LoggedIn) Or Not (Players[CurrentPlayer].Active) Then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
{Writeln(' Won ' + IntToStr(Win) + ' Games ');
Writeln(' Lose ' + IntToStr(lost) + ' Games ');
Writeln(' Reward ' + IntToStr(Reward)); }
Writeln('||===========================||');
Stats_Commit;
end;


procedure AntiBan;
var
NoBan: Integer;
begin
// FindRandoms;
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;



function InGame: Boolean; //weequ's function
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

Procedure BoatWait;
begin
If Not (LoggedIn) Or Not (Players[CurrentPlayer].Active) Then
NextPlayer(True);
repeat
Status('Waiting In Boat');
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until(NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x,y:Integer):Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: Array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 3958408, MSX1, MSY1, MSX2, MSY2, 4);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
For I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
If(IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;


procedure Plank;
begin
If Not (LoggedIn) Or Not (Players[CurrentPlayer].Active) Then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
MakeCompass('S');
FindRandoms;
begin
{ KeyDown(VK_Down);
wait(Random(1000) + 500);
KeyUp(VK_Down);}
Setangle(0);
end;
repeat
if not RewardBox then
if FindBoard(x,y) then
//If (FindColorSpiralTolerance(x, y, 5008519, MSX1, MSY1, MSX2, MSY2, 3)) then
//If (FindObjCustom(x,y,['Gang','angplank','Gangplank','gplank'], [3628927,2704989,3496825], 5)) Then
//If FindObjTPA(X, Y, 5074570, 10, 1, 120, 120, 50, ['angplank','Gang']) then
// ClickMouse2(False);
// wait(2000);
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
Until(FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat))
//ChooseOption('angplank');
//until(ChooseOption('ross') or ChooseOption('angplank'));
//until WaitOptionMulti(['ross', 'angplank', 'Gangplank'], 1500);
{if Isuptext('angplank') then
Mouse(x,y,0,0,true);
wait(1232);
Mouse(x,y,0,0,true); }
FindRandoms;
//Until(ChooseOption('ross'));
Report;
NPC;
exit;
end;

Function Range : Boolean;
begin
If (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end else
Result := False;
Writeln('False');
end;



Procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528,179,545,195,1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x,y,0,0);
wait(Random(100) + 20);
Mouse(x,y,0,0,true);
if QuickPrayer then
begin
Writeln('Toggling Quick Prayer');
Status('Quick Prayer ON');
MouseBox(745, 70, 775, 75, 1);
end else
exit;
end;
end;
end;




{Procedure FightPests; //2305818 green pest
var //2701962 = red pest
CTS: Integer; //5051472 = PURPLE PEST POP UP
begin
Status('Fighting Pests');
If not (FindObjCustom(x,y,['hifter','Shifte','Shifter','hift'], [2108184,5051472,3228504], 1)) Then
begin
RandomButton;
Report;
exit;
end else
// if (counter>5000) then
begin
// counter := 0;
Mmouse(x,y,0,0);
wait(Random(300) + 20);
if isuptext('ttac') then
Mouse(x,y,0,0,True);
Report;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end else
wait(2000);
Report;
end;
end; }

Procedure FightPests; //2305818 green pest
var //2701962 = red pest
CTS: Integer; //5051472 = PURPLE PEST POP UP
begin
Status('Fighting Pests');
//['Splatter','Torcher','Shifter','Defiler','Splatter','Brawler'])
{ if not FindObj(x, y, 'hifter', 2108184, 1) or
FindObj(x, y, 'hifter', 2572415, 10) then }
If not (FindObjCustom(x,y,['hifter','Shifte','Shifter','hift'], [2108184,5051472,3228504,4942983], 5)) Then
begin
if (counter>1000) then
begin
Report;
counter := 0;
SpecAttack;
end;
RandomButton;
Exit;
end else
Mmouse(x,y,0,0);
wait(Random(300) + 20);
if isuptext('ttac') then
Mouse(x,y,0,0,True);
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end else
wait(2000);
Report;
end;

//2830989
// 1319947
//


//purple = western
//blue = eastern
//yellow = south eastern
// red = south western
Function Portal(Name : string) : Boolean;
begin
case Name Of
'red' :
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end else
Result := False;
end;
end;
//You must defend
Procedure RedRoute;
begin
Tored;
AttackRed;
If Portal('yellow') then
begin
exit;
end;
end;

Procedure YellowRoute;
begin
wait(Random(100) + 20);
Status('Yellow Route');
toyellow;
AttackYellow;
If Portal('red') then
begin
RedRoute;
end;
end;

procedure FreeDTMS;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
FreeDTM(Left);
FreeDTM(Left1);
FreeDTM(northspot);
FreeDTM(redportal);
FreeDTM(yellowportal);
FreeDTM(spot44);
end;

Procedure PestControl;
begin
WinorLose;
Spot1;
Spot2;
SpecAttack;
repeat
FightPests;
Until(false);
end;


begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 25;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter:=0;
ClearDebug;
LoginPlayer;
Inc(counter);
repeat
begin
FreeDTMS;
NPC;
Report;
Plank;
BoatWait;
end;
begin
Spot1;
Spot2;
if SpecialAttacks then
begin
SpecAttack;
end;
end;
repeat
FightPests
Until not (Ingame);
until(false);
end;
end.

//3978936 yellow Port

0blivian

2012-02-14 08:22:04

thx for the script man yopu are awsome continue your epicness=]

0blivian

2012-02-14 08:46:07

really detectable as i ran with my main for like 5 minutes. i saw other 10 people using it we all go to same spot when script starts then we wonder off an kill middle creatures but theres not enought to get 500 since so many others doing same,.so atm this is good but kinda bad

o o magic

2012-02-14 10:11:26

The script doesn't work, when i try to run it nothing happens and all i see in the bar is this:
"Welcome to Runescape.

'One minute has passed…'

'One minute has passed…'

'One minute has passed…'

'One minute has passed…'"

Etc. Help?

Gamemaster

2012-02-14 11:05:42

Great script! And I think this proggy speaks for itself =P
||===========================||
|| P1nkys PestController ||
||===========================||
|| February 14th, 2012 ||
||===========================||
Worked For 11 Hours, 57 Minutes and 43 Seconds
Games Played 250
||===========================||

o o magic

2012-02-14 11:36:45

How do you guys make it work? Doesn't work for me, nothing pops-up except the runescape client when I run it and nothing happens :S

P1nky

2012-02-14 13:12:58

From: o o magic
The script doesn't work, when i try to run it nothing happens and all i see in the bar is this:
"Welcome to Runescape.

'One minute has passed…'

'One minute has passed…'

'One minute has passed…'

'One minute has passed…'"

Etc. Help?


Fill in 'DeclarePlayerz' , with your username and password.

hash.burnswell

2012-02-14 14:17:48

I let it run all night had 222 points this morning = ))

|| P1nkys PestController ||
||===========================||
|| February 14th, 2012 ||
||===========================||
Worked For 7 Hours, 9 Minutes and 37 Seconds
Games Played 130
||===========================||

fatal_one

2012-02-15 00:12:07

Cant get it to work for me no movement

haxine

2012-02-15 00:18:34

evertime i run the script it runs to a location and doesnt attack any monsters and gains no points, how can i fix this???

kunzy

2012-02-15 01:02:04

it wont cross the plank to get to the boat? anyone else having that porblem

P1nky

2012-02-15 01:12:20

From: P1nky
Mates, give me couple days, I'll update it for y'all , have quite a bit school load on me.
Just few more days Mates.

Please read posts above… Many of y'all questions have been answered and please Mates have some patience, I'll get it back up and running like a Charm by tomorrow or so.

kunzy

2012-02-15 01:14:40

Thanks pinky, really appericate ur work!! u need to teach me ur leet skills =]

Thomass

2012-02-15 03:10:49

I actually love you right about now! <3 <3
EDIT: it stops working after every 4 games or so (cant find the plank thingo) and i have to get my charcter onto the boat and start the script again, am i the only one?

kunzy

2012-02-15 05:15:27

happens to everyone, hell fix it in a few days read… ^^^

Grihmm

2012-02-15 09:17:44

It still works perfectly for me P1nky. I will donate to you soon I promise. I don't have a paypal account yet is all lol. >.> I work a lot too so the next time I get a day off I will go to the bank.


I've also had about 400 more points but I handed them in.

Ilya

2012-02-15 12:37:19

I know I'm a new user, but take this into consideration.
Recently people have been putting their clan vex's right beside the plank, and sometimes while running it clicks on it, which pops up the clan's screen, which causes the script to freak. If you could include a failsafe for that, it would benefit the script greatly, as well as increase the productivity.
Thanks, keep up the good work.
Cheers.

phantom1

2012-02-15 15:50:46

^^^^

brian235026

2012-02-15 18:21:33

ive been running the script for a wile, only errors i see is sometimes it walks to the wrong spot and donst get to the middle and sometimes it dosnt go in the ship. you should also make it login to the pest woruld by defalt

o o magic

2012-02-15 23:24:24

Thanks mate, the script started now :) I will post any bugs if any occurs. Looking very good so far :D

P1nky

2012-02-16 00:52:57

Just did some quick tweaks (Fixed 'QuickPrayer' feature/Walk to Void is more accurate/fixed finding pests) ,should run to 6 hour limit.
Haven't tested fully though, although tomorrow I will make it a official release.


Thank You.

Version [E]:

program PestControllerBETA;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}


//P1nky's PestController
//BETA Version

const
SpecialAttacks = False;
QuickPrayer = True; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]


procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate,DTMSPOT2,DTMSPOT3,DTMSPOT, x, y, counter : integer;


Procedure FindRandoms;
Begin
If Not (LoggedIn) Or Not (Players[CurrentPlayer].Active) Then
NextPlayer(True);
FindNormalRandoms;
wait(Random(100) + 20);
FindLamp('Woodcutting');
End;



function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;

dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;

dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;

dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;

dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;

dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;


function Step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 901;
dtmMainPoint.y := 138;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 65535;
dtmMainPoint.Tolerance := 25;

dtmSubPoints[0].x := 901;
dtmSubPoints[0].y := 138;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 65535;
dtmSubPoints[0].Tolerance := 25;

dtmSubPoints[1].x := 902;
dtmSubPoints[1].y := 133;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 2714760;
dtmSubPoints[1].Tolerance := 25;

dtmSubPoints[2].x := 907;
dtmSubPoints[2].y := 139;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2714760;
dtmSubPoints[2].Tolerance := 25;

dtmSubPoints[3].x := 901;
dtmSubPoints[3].y := 145;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2714760;
dtmSubPoints[3].Tolerance := 25;

dtmSubPoints[4].x := 896;
dtmSubPoints[4].y := 137;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 2714760;
dtmSubPoints[4].Tolerance := 25;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;


function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;

dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;

dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;

dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;

dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;

dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;



function Left: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 665;
dtmMainPoint.y := 181;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1466931;
dtmMainPoint.Tolerance := 15;

dtmSubPoints[0].x := 665;
dtmSubPoints[0].y := 181;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1466931;
dtmSubPoints[0].Tolerance := 15;

dtmSubPoints[1].x := 661;
dtmSubPoints[1].y := 176;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 2908770;
dtmSubPoints[1].Tolerance := 15;

dtmSubPoints[2].x := 671;
dtmSubPoints[2].y := 174;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2255469;
dtmSubPoints[2].Tolerance := 15;

dtmSubPoints[3].x := 665;
dtmSubPoints[3].y := 172;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2323058;
dtmSubPoints[3].Tolerance := 15;

dtmSubPoints[4].x := 658;
dtmSubPoints[4].y := 177;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3242361;
dtmSubPoints[4].Tolerance := 15;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

function Left1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..3] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 660;
dtmMainPoint.y := 143;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 263925;
dtmMainPoint.Tolerance := 15;

dtmSubPoints[0].x := 660;
dtmSubPoints[0].y := 143;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 263925;
dtmSubPoints[0].Tolerance := 15;

dtmSubPoints[1].x := 650;
dtmSubPoints[1].y := 139;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 5350033;
dtmSubPoints[1].Tolerance := 15;

dtmSubPoints[2].x := 652;
dtmSubPoints[2].y := 146;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 4363665;
dtmSubPoints[2].Tolerance := 15;

dtmSubPoints[3].x := 648;
dtmSubPoints[3].y := 131;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 263925;
dtmSubPoints[3].Tolerance := 15;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;


procedure LeftSpot;
begin
MakeCompass('S');
LeftGate := Left;
if DTMRotated(LeftGate, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
end;


procedure LeftPortal;
begin
MakeCompass('S');
white := Left1;
if DTMRotated(white, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
end;
//white

function NorthSpot: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..3] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 708;
dtmMainPoint.y := 160;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 393967;
dtmMainPoint.Tolerance := 15;

dtmSubPoints[0].x := 708;
dtmSubPoints[0].y := 160;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 393967;
dtmSubPoints[0].Tolerance := 15;

dtmSubPoints[1].x := 702;
dtmSubPoints[1].y := 155;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 3420468;
dtmSubPoints[1].Tolerance := 15;

dtmSubPoints[2].x := 715;
dtmSubPoints[2].y := 155;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3355448;
dtmSubPoints[2].Tolerance := 15;

dtmSubPoints[3].x := 708;
dtmSubPoints[3].y := 153;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3289141;
dtmSubPoints[3].Tolerance := 15;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Spot44: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 672;
dtmMainPoint.y := 180;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 329713;
dtmMainPoint.Tolerance := 0;

dtmSubPoints[0].x := 672;
dtmSubPoints[0].y := 180;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 329713;
dtmSubPoints[0].Tolerance := 0;

dtmSubPoints[1].x := 671;
dtmSubPoints[1].y := 156;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 6523792;
dtmSubPoints[1].Tolerance := 0;

dtmSubPoints[2].x := 667;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 5336950;
dtmSubPoints[2].Tolerance := 0;

dtmSubPoints[3].x := 678;
dtmSubPoints[3].y := 162;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 5792867;
dtmSubPoints[3].Tolerance := 0;

dtmSubPoints[4].x := 666;
dtmSubPoints[4].y := 163;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 6457999;
dtmSubPoints[4].Tolerance := 0;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;


//Portal Locs:

function YellowPortal: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 676;
dtmMainPoint.y := 179;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 65535;
dtmMainPoint.Tolerance := 15;

dtmSubPoints[0].x := 676;
dtmSubPoints[0].y := 179;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 65535;
dtmSubPoints[0].Tolerance := 15;

dtmSubPoints[1].x := 676;
dtmSubPoints[1].y := 172;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 7444128;
dtmSubPoints[1].Tolerance := 15;

dtmSubPoints[2].x := 682;
dtmSubPoints[2].y := 180;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 7312029;
dtmSubPoints[2].Tolerance := 15;

dtmSubPoints[3].x := 669;
dtmSubPoints[3].y := 178;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 7048342;
dtmSubPoints[3].Tolerance := 15;

dtmSubPoints[4].x := 676;
dtmSubPoints[4].y := 184;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 7114649;
dtmSubPoints[4].Tolerance := 15;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;


procedure TOYellow; // Directly to Yellow Portal
begin
MakeCompass('S');
Yp := YellowPortal;
if DTMRotated(YP, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(1);
end;

function RedPortal: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 778;
dtmMainPoint.y := 192;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 62719;
dtmMainPoint.Tolerance := 15;

dtmSubPoints[0].x := 778;
dtmSubPoints[0].y := 192;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 62719;
dtmSubPoints[0].Tolerance := 15;

dtmSubPoints[1].x := 778;
dtmSubPoints[1].y := 185;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 8150929;
dtmSubPoints[1].Tolerance := 15;

dtmSubPoints[2].x := 772;
dtmSubPoints[2].y := 183;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 7559818;
dtmSubPoints[2].Tolerance := 15;

dtmSubPoints[3].x := 786;
dtmSubPoints[3].y := 190;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 8418184;
dtmSubPoints[3].Tolerance := 15;

dtmSubPoints[4].x := 769;
dtmSubPoints[4].y := 188;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 7432058;
dtmSubPoints[4].Tolerance := 15;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ToRed; //Directly to Purple Portal
begin
Status('To Red');
MakeCompass('S');
Rp := RedPortal;
if DTMRotated(Rp, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(1);
end;


Procedure AttackWhite;
begin
repeat
if FindObj(x, y, 'ortal', 13217188, 15) then
MMouse(x,y,0,0);
wait(Random(100) + 20);
Mouse(x,y,0,0,false);
ChooseOption('ttack');
until(false);
end;


Procedure AttackRed;
begin
repeat
if FindObj(x, y, 'ortal', 6246545, 15) then
MMouse(x,y,0,0);
wait(Random(100) + 20);
Mouse(x,y,0,0,false);
ChooseOption('ttack');
wait(3434 + Random(244));
until(false);
end;


Procedure AttackYellow;
begin
repeat
Status('Attacking Yellow');
if FindObj(x, y, 'ortal', 3978936, 15) then
MMouse(x,y,0,0);
wait(Random(100) + 20);
Mouse(x,y,0,0,false);
ChooseOption('ttack');
wait(Random(100) + 20);
until(false);
end;


procedure SPOT1; // Toward Void.
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2; // Void
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(1300);
end;

function AwayFromVoid :boolean;
var
C : Integer;
begin
C := 42342;
If not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end else
result := true;
Spot1;
end;


procedure SPOT3; // Towards North Portals
begin
Status('Spot 3');
MakeCompass('S');
DTMSPOT3 := Step3;
if DTMRotated(DTMSPOT3, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
Flag;
wait(1300);
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

Function RewardBox : Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x,y,986895,134,96,435,334,1) then
begin
Result := True;
Mouse(392,60,0,0,true);
Reward := Reward + 1;
end else
Result := False;
end;

procedure SPOT4; // North (Middle of Yellow/Purple)
begin
Status('Spot 4');
MakeCompass('S');
yellow := NorthSpot;
if DTMRotated(yellow, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
wait(Random(1000) + 20);
Flag;
end;

Procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!',True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned',2);
exit;
end else
if FindNPCChatText('noticed',True) or FindNPCChatText('lost.',True) then
begin
lost := lost + 1;
exit;
end else
begin
exit;
end;
end;



function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual',True) or
FindNPCChatText('Congratulations!',True) or
FindNPCChatText('knights',True) or
FindNPCChatText('lost.',True) or
FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or
FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
Begin
Result := True;
Writeln('NPC Message Detected!');
If (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
//wait(Random(200) + 20);
Status('NPC Message');
MMouse(x,y,0,0);
wait(Random(200) + 20);
Mouse(x,y,0,0,true);
WinOrLose;
end else
Result := False;
end;





procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
If Not (LoggedIn) Or Not (Players[CurrentPlayer].Active) Then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
{Writeln(' Won ' + IntToStr(Win) + ' Games ');
Writeln(' Lose ' + IntToStr(lost) + ' Games ');
Writeln(' Reward ' + IntToStr(Reward)); }
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;


procedure AntiBan;
var
NoBan: Integer;
begin
// FindRandoms;
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;



function InGame: Boolean; //weequ's function
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

Procedure BoatWait;
begin
If Not (LoggedIn) Or Not (Players[CurrentPlayer].Active) Then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until(NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x,y:Integer):Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: Array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 3958408, MSX1, MSY1, MSX2, MSY2, 4);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
For I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
If(IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;


procedure Plank;
begin
If Not (LoggedIn) Or Not (Players[CurrentPlayer].Active) Then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
MakeCompass('S');
FindRandoms;
begin
{ KeyDown(VK_Down);
wait(Random(1000) + 500);
KeyUp(VK_Down);}
Setangle(0);
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x,y) then
//If (FindColorSpiralTolerance(x, y, 5008519, MSX1, MSY1, MSX2, MSY2, 3)) then
//If (FindObjCustom(x,y,['Gang','angplank','Gangplank','gplank'], [3628927,2704989,3496825], 5)) Then
//If FindObjTPA(X, Y, 5074570, 10, 1, 120, 120, 50, ['angplank','Gang']) then
// ClickMouse2(False);
// wait(2000);
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
Until(FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat))
//ChooseOption('angplank');
//until(ChooseOption('ross') or ChooseOption('angplank'));
//until WaitOptionMulti(['ross', 'angplank', 'Gangplank'], 1500);
{if Isuptext('angplank') then
Mouse(x,y,0,0,true);
wait(1232);
Mouse(x,y,0,0,true); }
FindRandoms;
//Until(ChooseOption('ross'));
Report;
NPC;
exit;
end;

Function Range : Boolean;
begin
If (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end else
Result := False;
Writeln('False');
end;

var
qp : integer;

Procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP,x,y,701,52,733,79) then
begin
MMouse(x,y,0,0);
Mouse(x,y,0,0,true);
end else
exit;
end;


Procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528,179,545,195,1);
begin
If (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x,y,0,0);
wait(Random(100) + 20);
Mouse(x,y,0,0,true);
end;
end;
end;




{Procedure FightPests; //2305818 green pest
var //2701962 = red pest
CTS: Integer; //5051472 = PURPLE PEST POP UP
begin
Status('Fighting Pests');
If not (FindObjCustom(x,y,['hifter','Shifte','Shifter','hift'], [2108184,5051472,3228504], 1)) Then
begin
RandomButton;
Report;
exit;
end else
// if (counter>5000) then
begin
// counter := 0;
Mmouse(x,y,0,0);
wait(Random(300) + 20);
if isuptext('ttac') then
Mouse(x,y,0,0,True);
Report;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end else
wait(2000);
Report;
end;
end; }

Procedure FightPests; //2305818 green pest
var //2701962 = red pest
CTS: Integer; //5051472 = PURPLE PEST POP UP
begin
Status('Fighting Pests');
//['Splatter','Torcher','Shifter','Defiler','Splatter','Brawler'])
{ if not FindObj(x, y, 'hifter', 2108184, 1) or
FindObj(x, y, 'hifter', 2572415, 10) then }
If InFight then
repeat
exit;
Until not (infight);
If not (FindObjCustom(x,y,['hifter','Shifte','Shifter','hift'], [2108184,5051472,3228504,4942983], 2)) Then
begin
if (counter>1000) then
begin
Report;
counter := 0;
end;
RandomButton;
Exit;
end else
Mmouse(x,y,0,0);
wait(Random(300) + 20);
if isuptext('ttac') then
Mouse(x,y,0,0,True);
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end else
wait(2000);
Report;
end;

//2830989
// 1319947
//


//purple = western
//blue = eastern
//yellow = south eastern
// red = south western
Function Portal(Name : string) : Boolean;
begin
case Name Of
'red' :
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end else
Result := False;
end;
end;
//You must defend
Procedure RedRoute;
begin
Tored;
AttackRed;
If Portal('yellow') then
begin
exit;
end;
end;

Procedure YellowRoute;
begin
wait(Random(100) + 20);
Status('Yellow Route');
toyellow;
AttackYellow;
If Portal('red') then
begin
RedRoute;
end;
end;

procedure FreeDTMS;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
FreeDTM(Left);
FreeDTM(Left1);
FreeDTM(northspot);
FreeDTM(redportal);
FreeDTM(yellowportal);
FreeDTM(spot44);
end;

Procedure PestControl;
begin
WinorLose;
Spot1;
Spot2;
SpecAttack;
QPrayer;
repeat
FightPests;
Until(false);
end;


begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter:=0;
ClearDebug;
LoginPlayer;
Inc(counter);
repeat
begin
FreeDTMS;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
Until not (Ingame);
end;
end;
until(false);
end;
end.

//3978936 yellow Port

Ilya

2012-02-16 01:25:32

Gonna try it overnight.
Will post a proggie.

Thomass

2012-02-16 04:36:23

Is there a download link for the above script? I tried copying and pasting it but it didnt work + im an idiot on this stuff.

Thanks

kunzy

2012-02-16 14:55:22

Thanks for the quick update pinky. ill check it out today or tommo and let u know how it goes.

kocke

2012-02-16 15:20:50

Good job but the scripts rapidly click the monsters don't wait always click.

legolas123

2012-02-16 17:38:35

hey how can i enter this script? or are you gonna upload the simba file??

eljb1234

2012-02-16 17:39:44

awesome man thanks

tamatalk2

2012-02-16 18:17:10

works but is a bit dodgy wouldn't recommend to run overnight

P1nky

2012-02-16 18:45:43

From: kocke
Good job but the scripts rapidly click the monsters don't wait always click.


To be honest, I had fixed that problem, but it's way too slow on the reflexes when a pest spawns, so I had to take it out in order to get more than 500 + points.

Btw, mates couple more mins and expect a release.

Syntax

2012-02-16 18:49:17

P1nky I very much appreciate this script, of there is anything I can do to help let me know.

bestiedamo1

2012-02-16 20:27:01

sorry im a major noob but how you make it change server it keeps going to a world thats not pest control

legolas123

2012-02-16 20:32:44

thanksssss man

legolas123

2012-02-16 20:34:16

btw you know howmuch exp per hour? just wondering

Grihmm

2012-02-16 23:59:03

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 16th, 2012 ||
||===========================||
Worked For 5 Hours, 5 Minutes and 52 Seconds
Games Played 30
||===========================||




||===========================||
|| P1nkys PestController ||
||===========================||
|| February 16th, 2012 ||
||===========================||
Worked For 6 Hours, 54 Minutes and 20 Seconds
Games Played 91
||===========================||

P1nky

2012-02-17 02:57:27

Version [E] has been released.
  • Fixed Finding Plank.
  • Better Pest Finding, less crazier.
  • Fixed Quick Prayer.
  • More accurate to get to the middle.
  • A lot more has been fixed/added to make the script run more smoother.

-Cheers

4sure

2012-02-17 05:58:29

From: P1nky
Version [E] has been released.
  • Fixed Finding Plank.
  • Better Pest Finding, less crazier.
  • Fixed Quick Prayer.
  • More accurate to get to the middle.
  • A lot more has been fixed/added to make the script run more smoother.

-Cheers


Will run tomorrow night and post proggies.

fatal_one

2012-02-17 07:52:38

Good Job p1nky i must say, i do love the script. Fav PC script out (obviously) maybe my new favorite public fighting script. ran it last night sorry forgot to get prog report, but woke up with over 100 points :) Cheers!

r4p1dz

2012-02-17 09:55:26

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 17th, 2012 ||
||===========================||
Worked For 6 Hours, 41 Minutes and 50 Seconds
Games Played 89
||===========================||



version E proggy

P1nky

2012-02-17 13:17:04

Let me know if any bugs! I just ran it for 18 hours.

dvsilverwing

2012-02-17 15:49:44

Nice! I'm still using the D version of the script (It works perfect for me, and why fix what isn't broken? AFAIK I'm not missing any super-important new features, I hope) but it's working great, running till it's 6 hour limit every time I use it. Although, I did notice a Mod playing Pest Control on World 53 2 days ago. He didn't notice the 5 or 6 bots in the game, though…

legolas123

2012-02-17 19:11:12

wow p1nky great gonna run it now. thanks!

Chrome

2012-02-17 19:27:57

From: P1nky
Let me know if any bugs! I just ran it for 18 hours.

You're using my account righT?

legolas123

2012-02-17 19:58:36

one thing i must say. the last boat doesnt really work. and i suggest the pest control world., everything else is great

kunzy

2012-02-17 22:38:16

hey pinky it keeps saying this -

Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.

what doews that mean?

P1nky

2012-02-18 00:44:10

From: Chrome
You're using my account righT?

I think so, lols I deleted all my messages so not sure whose account, if it is well i have used probably over 700 points already.


From: il o y o il
hey pinky it keeps saying this -

Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.

what doews that mean?


Ignore that message Mate.

US Marine

2012-02-18 02:19:16

From: il o y o il
hey pinky it keeps saying this -

Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.

what doews that mean?


Im getting the same thing. Spam clicks the ocean and random spots.

P1nky

2012-02-18 02:26:15

From: Usmarine
Im getting the same thing. Spam clicks the ocean and random spots.


In the game or outside?

US Marine

2012-02-18 12:34:35

From: P1nky
In the game or outside?


Outside, it will play one full game, win/lose, then instead of going back into the boat… it spam clicks the ocean.

kunzy

2012-02-18 17:35:11

yeh, im gettin extactly the same as usmarine…

after one game it goes okay, then will not enter the boat and spam clicks the ocean outside, gonna teak my ingame graphics now see what happens..

kunzy

2012-02-18 17:55:05

works perfect, just adjusted some graphics works like a charm thankyou!

P1nky

2012-02-18 20:40:10

From: il o y o il
works perfect, just adjusted some graphics works like a charm thankyou!


Great to know that is the fix :)

Thank You.

spots1

2012-02-19 01:51:59

I'm new, i downloaded it, now how do i use it?

P1nky

2012-02-19 02:30:49

From: spots1
I'm new, i downloaded it, now how do i use it?


Bunch of Tutorials here:

http://villavu.com/forum/forumdisplay.php?f=98

check couple of them out, sure you'll get hang of it.

Good Luck

Scoped Guns

2012-02-19 03:08:44

does it only work on novice boat?

P1nky

2012-02-19 03:11:59

From: Scoped Guns
does it only work on novice boat?


I made it only for novice boat, but reading this thread declares that People tend to use this in intermediate/advance boat.

Kajutsky

2012-02-19 03:19:08

i havnt played rs in ages so i havnt botted either so how do u run this script?

Scoped Guns

2012-02-19 04:05:40

im getting this when i try to start it?


Error: Exception: The Points you passed to DrawATPA exceed the bitmap's bounds at line 116
The following DTMs were not freed: [SRL - Lamp bitmap, 1]
The following bitmaps were not freed: [SRL - Mod bitmap, SRL - Admin bitmap, SRL - Flag bitmap]

xdestinyx

2012-02-19 16:25:32

okey guys ive done it now for like 2 hours and it works perfectly have some of u guys got banned yet doing this Answer plox?

Syntax

2012-02-19 18:15:12

Dam I'd like to learn to script..

phantom1

2012-02-19 18:24:48

<3 Pink <3

xtrapsp

2012-02-19 18:25:03

I can use it on first and second boat.

Runs almost flawless, If not I get kicked off boat and restart.. which I really don't mind… just makes me look AFK :)

8.9/10 my good friend :)

US Marine

2012-02-19 18:52:42

AHHH figured out exactly what I was doing wrong. Gah, im a jackass.

:D Running extremely good now. thanks.

—How do you make the script past 50 games?—

Kajutsky

2012-02-19 23:59:04

do u need msi enabled?

Kajutsky

2012-02-20 00:12:13

how do u select which xp you want?

Kajutsky

2012-02-20 00:14:05

and how do you select which world to go into?
at novice there are too many bots cant get the damage count and at vet it doesnt att monsters

spots1

2012-02-20 02:48:48

GREAT BOT, full void in 2 days. (no suicide) and i didnt register for stats so next time i run i will post proggie

Syntax

2012-02-20 07:19:23

I never seem to attack the portals for some reason :o

JuKKa

2012-02-20 09:23:37

I looked thorught the script, i found alot of bad standards ALOT of infinite loops, bad coding practice ALOTof unnessecary stuff.


Procedure FightPests; //2305818 green pest
var //2701962 = red pest
Z, R, CTS: Integer; //5051472 = PURPLE PEST POP UP

begin
Status('Fighting Pests');
If not (EFindObjCustom(x,y,['hifter','Shifte','Shifter','hift'], [2108184,5051472,3228504,4942983], 3)) Then
begin
if (counter>1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end else
Mmouse(x,y,0,0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x,y,0,0,False);
ChooseOption('ttack');
end else
begin
Mouse(x,y,0,0,true);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end else
wait(2000);
Report;
end;
end;
and what is this? Has to be the ugliest procedure i've seen in a long time, nothing personal but i wont be using this script, it screams bannage.

1200 lines for a pestcontroll script, it enters the boat and fights middle? I could do this in 300 lines…

brentrobbins

2012-02-20 10:00:23

thank you for your invested time :) , i will test the E version on the highest level lander and see how it runs and hopefully post a progress report

brentrobbins

2012-02-20 10:14:29

it seems to be working fine so far :)

boobies

2012-02-20 14:12:04

awesome script, works perfectly and hours on end for me :D

P1nky

2012-02-20 14:40:37

From: JuKKa
I looked thorught the script, i found alot of bad standards ALOT of infinite loops, bad coding practice ALOTof unnessecary stuff.


1200 lines for a pestcontroll script, it enters the boat and fights middle? I could do this in 300 lines…


Thank you for your feedback JuKKa, tbh reading this post made me feel embarrass and ashamed of myself. I will try to improve myself so I won't have to see a comment like this in the future.

Also, I just made this script to 600 lines, by taking out the unnecessary DDTMs for portals.

-Cheers.

kunzy

2012-02-21 01:38:08

works great pinky keep up the great work! hows the sw bot going? will it only be for members??

K1ller

2012-02-21 01:40:42

every1 seems to like this script :S im having problems on veteran boat, it plays 1-2 game then runs to the intermediate boat and goes in there and sometimes logs out some help pl0x
,

Kajutsky

2012-02-21 01:49:03

is there an attack portal option?

JuKKa

2012-02-21 04:56:52

you have alot of "missing" begins for example
   procedure LeftSpot;
begin
MakeCompass('S');
LeftGate := Left;
if DTMRotated(LeftGate, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
end;
for example this would click 0, 0 (upper left corner) if it didnt find the DTM, Alot of other functions do this aswell.

and


Function Range : Boolean;
begin
If (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end else
Result := False;
Writeln('False');
end;
this would print both true and false in the debug box, if it found the color.

the infinite loops this one is killer, i would not wish my main to be caught in this.

Procedure AttackWhite;
begin
repeat
if FindObj(x, y, 'ortal', 13217188, 15) then
MMouse(x,y,0,0);
wait(Random(100) + 20);
Mouse(x,y,0,0,false);
ChooseOption('ttack');
until(false);
end;
alot of improvement but you will get there.

sorrry if i sounded a bit harsh in my earlier post.

xtrapsp

2012-02-21 05:01:29

guys it does work, if it doesn't attack anything it will kick you out and start over. I have 2 sets of void now cause of this.

as for what jukka said, your a good guy for pointing these out. As harsh as it is it will allow p1nky to improve.
p1nky i'm not a great scripter but like I said in the pm need help with anything? Hit me up :)

K1ller

2012-02-21 07:26:59

I dont get that changes u told me i shud delete them from the script?

MattL191

2012-02-21 08:13:30

Great script. Got my set of voids from this. One of the most used scripts ive seen to. i was playing last night late and saw this script running could tell by where they stoped. atleast 10people using it. good job man.

Nemesis3X

2012-02-21 08:24:04

From: MattL191
Great script. Got my set of voids from this. One of the most used scripts ive seen to. i was playing last night late and saw this script running could tell by where they stoped. atleast 10people using it. good job man.


Ya, You're Right. Continu like this.

P1nky

2012-02-21 08:29:21

From: JuKKa
you have alot of "missing" begins for example
   procedure LeftSpot;
begin
MakeCompass('S');
LeftGate := Left;
if DTMRotated(LeftGate, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
end;
for example this would click 0, 0 (upper left corner) if it didnt find the DTM, Alot of other functions do this aswell.

and


Function Range : Boolean;
begin
If (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end else
Result := False;
Writeln('False');
end;
this would print both true and false in the debug box, if it found the color.

the infinite loops this one is killer, i would not wish my main to be caught in this.

Procedure AttackWhite;
begin
repeat
if FindObj(x, y, 'ortal', 13217188, 15) then
MMouse(x,y,0,0);
wait(Random(100) + 20);
Mouse(x,y,0,0,false);
ChooseOption('ttack');
until(false);
end;
alot of improvement but you will get there.

sorrry if i sounded a bit harsh in my earlier post.



To be honest, not trying to cover anything up, check the code out now. I deleted whatever is not being used; Also, the code you have posted up was being tested (such as just to see if the DDTMs were working, and if it can find the portal) and it was not being used anywhere in the script.

But, I do understand the 'FightPests' procedure is quite messy and I shall work on it and a lot of other procedures. Also, add more 'begins'.
Thank You Mate & No problem Mate, I actually appreciate you being straight-forward. :)

emopenguin91

2012-02-21 11:54:41

[E] works great, been running it non stop since it came out (: my longest one with it so far is 7 hours which i did last night… thanks so much for making a free pc bot

akash22

2012-02-21 18:14:32

is this a legit 1 ? not trolling i srsly need 1 but some dumbass posted this bot is hacked it so pls respond.

weequ

2012-02-21 18:20:07

From: akash22
is this a legit 1 ? not trolling i srsly need 1 but some dumbass posted this bot is hacked it so pls respond.
If you download it from the first post it is safe. If you download anywhere else it might not be safe.

stevieisback

2012-02-21 18:26:22

Thanks bro got helm and gloves almost top then bottom full void:D melle void

siyao

2012-02-22 08:34:23

I started first game with this script, it goes flawless for now, I will give some comments later

K1ller

2012-02-22 08:53:56

Im still having problems trying to pc in veteran boat and it sometimes goes to the intermediate boat some1 help plz

Based God

2012-02-22 10:55:35

Can you make it so that if it gets off the middle, it doesnt just stand there. Maybe add something where the player can go back to the middle if he/she is outside of it

P1nky

2012-02-22 11:22:40

From: Based God
Can you make it so that if it gets off the middle, it doesnt just stand there. Maybe add something where the player can go back to the middle if he/she is outside of it


I'll work on that in version [F]

siyao

2012-02-22 11:35:10

It works perfect for me, nice job. running 6 hours without error….

boozer

2012-02-22 14:54:23

lmao 4+ hours and 4 commendations?! plz fix it up some?

fatal_one

2012-02-22 16:50:37

Works fine for me. Ive been botting it straight for 5 days with hour or so breaks

vade700

2012-02-22 18:15:52

Works great, have gotten about 300 PC points so far. Thanks for the time and hard work you have put into this. Means a lot.

stevieisback

2012-02-22 18:50:10

I got full void melle And so many people in middle I dont wanna be rude but can you make it attack other monsters too I dont care for portals and 1 tiny bug in E when Im In vetran it sometimes put me in inti boat Just helping out so you can fix but got full void in 2 days cause this many thanks!!

kuiper

2012-02-22 20:29:02

Doesn't join a pest control world.

alypta

2012-02-22 22:22:32

You should make it go to the portals and kill monsters, i've played many hours of this, but it rarely gets 500 damage, if you could make it go to the portals and kill it'd be much better, thanks. also theres lots of HIGH levels in the middle that always kill the monsters in one hit which decreases our chances of getting the 500 damage needed. thanks great script!

monkeyninjo

2012-02-23 06:59:32

Would be great if this script attacked the portals or just random NPCs that spawn out of the portals because atm the script is losing a lot of possible commendations just because it hasn't reached the 500 damage mark, because the shifters die before the script realises they're there.

CreaShun

2012-02-23 09:07:30

Yep, Everything mentioned above, Just needs to do a little bit more walking around and killing and it will be an insane script, losing alot of potential points just because it stands there instead of walking 10 ft and killing monsters for 500HP

anth_

2012-02-23 11:40:33

Very nice script, going to try and get the 6300 points I need for 99 strength :D As said, it sometimes goes to the experienced lander even when you go to the veteran. Also, it would be better to spam click the plank onto the larder as you often have to wait a small bit for a game to start otherwise.

Thank you for your hard work :)

fatal_one

2012-02-23 12:30:35

p1nky, scripts working better than ever, much faster in getting points, runs longer, i cant even begin to tell you how much HP exp im getting. Keep up the good work we all love the script!

Don Tonberry

2012-02-23 14:29:07

i find if i leave it in the vet boat it does a few rounds then runs to the intermediate and cus of this it doesnt get any commendations, is there anything i can do about this? and is anyone else having this problem?

anth_

2012-02-23 14:43:54

From: Don Tonberry
i find if i leave it in the vet boat it does a few rounds then runs to the intermediate and cus of this it doesnt get any commendations, is there anything i can do about this? and is anyone else having this problem?


I have this too, sure P1inky will fix it

P1nky

2012-02-23 17:07:00

From: divina commedia
I have this too, sure P1inky will fix it


I made this for novice, although Is intermediate/advance same as novice boat?

anth_

2012-02-23 18:02:35

From: P1nky
I made this for novice, although Is intermediate/advance same as novice boat?


It's just a misunderstanding in the script where the compass goes south and the camera goes down - It just misses the gangplank (veteran) and clicks near the other boat (intermediate), so it walks there instead. Would be much appreciated if you could fix it - you get 4 points per game @ veteran :)

monkeyninjo

2012-02-23 18:03:14

From: P1nky
I made this for novice, although Is intermediate/advance same as novice boat?


Yes, the script treats the Veteran and Intermediate boats the same as novice. I just find that it doesn't reach 500 damage a lot of the time.

joker123

2012-02-24 00:41:41

how i let it login automatic with my pass and user? anyone help

P1nky

2012-02-24 02:48:35

From: joker123
how i let it login automatic with my pass and user? anyone help


I don't understand what you mean?

If it is not logging in, than fill in the 'declareplayerz'.

brentrobbins

2012-02-24 19:06:21

great script, runs very smooth, only sometimes does it click elsewhere by mistake or finds another gangplank isntead of the lander…..i use this for the high level lander. I know the colors of all the planks are the same, but maybe some kind of fail safe to keep you outside of the correct lander would allow a person to select which lander they would like to constantly use, just a suggestion, i dont think that would be a very simple feat, but could be a future idea. Otherwise works very long very well. 9.2 outta 10

Fwd Motion

2012-02-25 01:15:12

I was having trouble with it trying to click the gangplank.. I noticed in the script that you are using "isuptext" for the gangplank, when you should use "waituptext", because if you do isuptext, then it will click as soon as isuptext is there, but if the mouse is moving around really fast, sometimes it will think that it is over the gangplank, but in reality, it just moved the mouse over it, so it just clicks some random area. But Waituptext will move the mouse to the area, wait for the uptext. I used WaitUpText with a 1 second wait time and it boards the lander almost flawlessly now… I also made it to where it wouldn't make the camera angle low, that way it won't even see the other gangplanks.

'Toxin

2012-02-25 01:37:38

From: joker123
how i let it login automatic with my pass and user? anyone help


I just died laughing.

Fwd Motion

2012-02-25 04:47:08

From: xxx toxin xxx
i just died laughing.


rofl!

P1nky

2012-02-25 12:35:11

From: dgpro
not working well for me :'(


What is wrong?

bayeasy

2012-02-25 12:35:29

Working pretty flawless will post a proddy soon, only thing you should change is the spam clicking and the world, it doesnt join a PC world.

P1nky

2012-02-25 12:38:11

From: bayeasy
Working pretty flawless will post a proddy soon, only thing you should change is the spam clicking and the world, it doesnt join a PC world.


For the SpamClicking, declare 'false' instead of 'true' for Fast500 (located under the const), it will slow it down, although you may not get all your 500 exp.

And I made a join quick world feature for next update :D

bayeasy

2012-02-25 12:42:58

From: P1nky
For the SpamClicking, declare 'false' instead of 'true' for Fast500 (located under the const), it will slow it down, although you may not get all your 500 exp.

And I made a join quick world feature for next update :D


sounds good, im getting around 3000 exp per round

P1nky

2012-02-25 19:47:50

From: bayeasy
sounds good, im getting around 3000 exp per round


That's crazy good Mate, a lot of people using this script, trouble getting their 500.

kunzy

2012-02-25 21:13:00

great still working never let me down =D

brentrobbins

2012-02-25 22:58:59

Id like to report a problem with the camera angle. When you change the camera angle to as low to the ground as possible, it makes the script more likely to click the wrong area and run off far away from the lander. The bot is set to lower the camera angle and then search for the plank and sometimes it will lower the angle and this will block the plank or the bot will click far in the distance on something similar brown and run far away from the boat. I feel like this could be completely avoided if the camera angle was set not to rotate all the way down when searching for the gangplank. I tried removing the code that did this part of the procedure myself but i could not quite get it to avoid doing that. The older versions kept the camera angle way over the player looking down and this was optimal for continuously entering the same boat and not running anywhere. I hope this will help you with your future versions.

Edit: I edited the code to where it would not change the camera angle when searching for the plank and now i think it will work just fine, but i have also been having an issue where the bot will run my character to the far SW corner of the void area and sit there since there are no shifters to attack. This has only started happening today, and occurred before i began messing with the code, so it must be a change to the game, and also i downloaded the script new to see if it still occurred and it does it every time, and i cannot get points while it does this, i hope you can find a solution.

Edit: I believe it would have something to do with the DTM you have set up for Spot2

Edit: sorry for all the edits, but i solved the problem by replacing the DTM for step 2 with a DTM of step 2 of one of your older versions (D to be specific) and this made (E) work just fine. I guess that may mean there is something a bit wrong with the Step two of version E im not completely sure. I really hope this can help you out some. Just ask if you have any questions about what i am trying to say if it wasnt written very understandably.

lkymn

2012-02-26 00:58:39

I've been watching it for a few minutes, done a whole match so far and it's doing very well.

Only problem is there's too many people in the middle killing shifters, but that's not really the bot's fault.

It had trouble crossing the plank because of the angle of the camera getting the people's name in the way of the plank, might want to fix that :x

Snooze

2012-02-26 05:43:29

Doesn't click the boots :o

rebeltjeh

2012-02-26 11:12:41

Howmuch pc points u guys get/hr (in 100+ boat) ?
average

brentrobbins

2012-02-26 11:21:48

From: rebeltjeh
Howmuch pc points u guys get/hr (in 100+ boat) ?
average


I generally get 400 commendations per 6 hour run, sometimes less sometimes more, depending on how the players that youre playing with do as far as winning. So about 100 wins overall, which would estimate maybe 170 or 200 games overall played. Again, this is with the highest level lander

rebeltjeh

2012-02-26 11:26:55

so basicly it's not viable to run this script for experience?

brentrobbins

2012-02-26 11:27:07

From: lkymn
I've been watching it for a few minutes, done a whole match so far and it's doing very well.

Only problem is there's too many people in the middle killing shifters, but that's not really the bot's fault.

It had trouble crossing the plank because of the angle of the camera getting the people's name in the way of the plank, might want to fix that :x



lkymn you can stop the script from lowering that camera angle all the way down and avoid the problem completely by removing line KeyDown(VK_Down); from procedure Plank. This will stop the lowering of the camera without effecting anything else. If you have any questions about this simply PM me. This applies to anyone that would like to stop the script from lowering the camera angle.

brentrobbins

2012-02-26 11:37:27

From: rebeltjeh
so basicly it's not viable to run this script for experience?


well it would depend on the level your skill is at, but generally speaking its best used for getting voidknight and prayer xp. I personally use it for prayer experience and go up a level every day, which is kind of slow, but considering prayer is 200m for lvl 99. I think its probably the best prayer training that is free. As for other combat skills, its still viable training because it doesnt require food or worry of dying, you can wear full voidknight get bonus combat damage and use prayers and specials during the games, so you can train your combat during the games, and also get 400 commendations per 6 hours.

At lvl 83 strength, you can spend commendations to get 385xp per, if you buy the xp in sets of 100 you get a 10% bonus. This would then be equivalent to spending 440 commendations on strength. 440 X 385 = 169,400 . for 6 hours, 169,400 / 6 = 28,233 xp per hour, not including the combat xp you get from actually doing damage within the game.

Also, this is helpful for people who wish to level their skills, and not level their hitpoints too much to remain at a lower level, such as pures. (note, your hitpoints will still be leveled some, just not nearly as much)

Triblouge

2012-02-26 11:43:16

sometimes it will hover the mouse over a tree stump as if it were one of the pests.

brentrobbins

2012-02-26 11:52:29

From: Triblouge
sometimes it will hover the mouse over a tree stump as if it were one of the pests.


This is a common problem with color bots, searching for something that has a specific color with tolerances to that color will sometimes result in the bot finding a different item with a very similar color within it. Just make sure that the brightness is all the way up and youre on fixed screen low detail in the graphics. I would say that the bot is finding the tree stump because of the height of them being similar to a shifter and possibly there is some yellow in the tree stump that resembles the yellow shifters. And since at times the bot is searching for colors that arent there because there are no shifters nearby, then it will find colors in other items that are the same. All in all, this shouldnt cause too much problem with the whole script as long as it doesnt constantly stand at the stump attempting to attack it and ignore everything else. Though this problem could be helpful in pinky's development of his newer version of the script.

helpbuyjtag

2012-02-26 19:58:53

Which one do I download ? a b c d e ?? :o

brentrobbins

2012-02-26 20:16:17

From: helpbuyjtag
Which one do I download ? a b c d e ?? :o


E is the most recent version

helpbuyjtag

2012-02-26 23:41:21

Oh thanks haha

qeeked

2012-02-27 11:44:09

Anyone know why alot of times my guy will run off the middle platform to the front gate and just stand there?

P1nky

2012-02-27 15:56:30

From: qeeked
Anyone know why alot of times my guy will run off the middle platform to the front gate and just stand there?


and weren't you the one saying my script keylogged you?

bobowns

2012-02-27 16:22:26

Thanks dude i ran it for 2 hours w/o problems

raptorstewie

2012-02-27 17:36:25

:/ um, it says "SRL Compiled in 0 msec
SMART Initialized.
Loaded: Server 17, Members: False, Signed: True, Super Detail: False. help anyone?

InH

2012-02-27 19:04:40

Im trying to get it to do veteran but keeps going to intermediate, do I need to change something in script? Or is it just made for intermediate?

brentrobbins

2012-02-27 19:35:45

From: InH
Im trying to get it to do veteran but keeps going to intermediate, do I need to change something in script? Or is it just made for intermediate?


well its not made for any boat specifically, its just that the planks are all the same color and the bot finds the other planks of other boats. I believe a solution to your problem would be to make it not change the angle of the camera so low, so it wont be able to see other planks and only the plank at the lander you stand at. If you go into the code and delete the line that says
keydown (vk_down) ; in the procedure named plank, and then move your camera angle looking straight down at the plank of your lander, then the script should work just fine and never have a problem of finding another landers plank instead of the one you start standing at. Any questions, ask me

InH

2012-02-27 19:43:40

From: brentrobbins
well its not made for any boat specifically, its just that the planks are all the same color and the bot finds the other planks of other boats. I believe a solution to your problem would be to make it not change the angle of the camera so low, so it wont be able to see other planks and only the plank at the lander you stand at. If you go into the code and delete the line that says
keydown (vk_down) ; in the procedure named plank, and then move your camera angle looking straight down at the plank of your lander, then the script should work just fine and never have a problem of finding another landers plank instead of the one you start standing at. Any questions, ask me


Didn't need to tell me, but thanks. Was just seeing if it was for a certain one.

GOt it working now
||===========================||
|| P1nkys PestController ||
||===========================||
|| February 27th, 2012 ||
||===========================||
Worked For 6 Minutes and 6 Seconds
Games Played 3
||===========================||


Now it sometimes gets stuck on how many points I have after game. =/

P1nky

2012-02-28 02:00:55

From: raptorstewie
:/ um, it says "SRL Compiled in 0 msec
SMART Initialized.
Loaded: Server 17, Members: False, Signed: True, Super Detail: False. help anyone?

Wait couple mins.

From: InH

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 27th, 2012 ||
||===========================||
Worked For 6 Minutes and 6 Seconds
Games Played 3
||===========================||


Now it sometimes gets stuck on how many points I have after game. =/


Elaborate please.

one1988

2012-02-28 02:04:09

hey p1nky using this to get me full Void now :)

InH

2012-02-28 14:49:53

From: P1nky
Wait couple mins.



Elaborate please.


when I have enough for a void piece that msg pops up and it gets stuck.

P1nky

2012-02-28 16:20:35

From: InH
when I have enough for a void piece that msg pops up and it gets stuck.


What message

bobowns

2012-02-28 16:49:24

Dunno what happened to the script but it stopped working after an hour now it just saved a screenshot to my desktop that says it died but its just stuck in the boat..i think jagex changed the colors or something cuz i tried 2 different scripts and none of em works for more than an hour

InH

2012-02-28 16:51:39

From: P1nky
What message


erm like saying you have 900 points or w/e u got.

@other nah make sure u use like 70% cpu usage from bar on right

tomdingo95

2012-02-28 17:03:57

i start it, it runs off the boat but goes and stands somewhere random not on the platform, it stands north north east, please fix it really annoying running for 6 hours and 3 games won..

InH

2012-02-28 17:19:42

From: tomdingo95
i start it, it runs off the boat but goes and stands somewhere random not on the platform, it stands north north east, please fix it really annoying running for 6 hours and 3 games won..


Yeah, its not clicking on planks anymore, its clicking on water or running out on the island.

Firec4pe

2012-02-28 19:01:11

Needs Faster Clicking since pests are dead before bot reacts

Firec4pe

2012-02-28 22:02:11

Running 'Almost' Fine after 3 Hours, 40 points[3hr], Reason because of Picture below, constantly just sits there spam clicking this tree stump.


Last Legend

2012-02-28 23:05:02

This script seems very attached to water and blue colors in general now, possibly off because of the game update, but I'm unsure.
Anubis

P1nky

2012-02-29 00:16:18

Just did a fast fix (fixed colors, better chance getting 500 now :) ), please test let me know:



program PestControllerBETA;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController
//BETA Version

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = False;
QuickPrayer = False; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]

procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
FindNormalRandoms;
wait(Random(100) + 20);
FindLamp('Woodcutting');
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 901;
dtmMainPoint.y := 138;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 65535;
dtmMainPoint.Tolerance := 25;
dtmSubPoints[0].x := 901;
dtmSubPoints[0].y := 138;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 65535;
dtmSubPoints[0].Tolerance := 25;
dtmSubPoints[1].x := 902;
dtmSubPoints[1].y := 133;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 2714760;
dtmSubPoints[1].Tolerance := 25;
dtmSubPoints[2].x := 907;
dtmSubPoints[2].y := 139;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2714760;
dtmSubPoints[2].Tolerance := 25;
dtmSubPoints[3].x := 901;
dtmSubPoints[3].y := 145;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2714760;
dtmSubPoints[3].Tolerance := 25;
dtmSubPoints[4].x := 896;
dtmSubPoints[4].y := 137;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 2714760;
dtmSubPoints[4].Tolerance := 25;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
MakeCompass('S');
FindRandoms;
begin
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;

function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;


procedure FreeDTMS;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
end;

begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayer;
Inc(counter);
repeat
begin
FreeDTMS;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
until (false);
end;
end.



Will make official release tomorrow after few more tweaks!

InH

2012-02-29 08:20:26

new one works good but spam clicks void(Not void guy anymore just full void armour)

CreaShun

2012-02-29 08:43:22

The script terminates when the player dies. Any fixes for that?

Awesome script btw:)

rebeltjeh

2012-02-29 12:48:25

From: CreaShun
The script terminates when the player dies. Any fixes for that?

Awesome script btw:)


Yes, dont die :D

Ashihtaka

2012-02-29 14:44:43

I will test the new script when I get home, but does that mean that jagex DID change the colours?

InH

2012-02-29 15:55:05

Amg… just what I wanted to come home too..

Status: \~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/
||===========================||
|| P1nkys PestController ||
||===========================||
|| February 29th, 2012 ||
||===========================||
Worked For 6 Hours, 3 Minutes and 55 Seconds
Games Played 5
||===========================||

With your beta update. BTW.

(Oh nvm, i forgot to change some of the code, it went in the wrong lander thing)

bnorman93

2012-03-01 06:45:13

The following DTMs were not freed: [SRL - Lamp bitmap, 1]
The following bitmaps were not freed: [SRL - Mod bitmap, SRL - Admin bitmap, SRL - Flag bitmap]

bnorman93

2012-03-01 06:46:16

said something about fkey function highlighted when i tried to run the script

werder

2012-03-01 09:55:49

From: P1nky
Proggies:

[PHP]

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 14th, 2012 ||
||===========================||
Worked For 11 Hours, 57 Minutes and 43 Seconds
Games Played 250
||===========================||


||===========================||
|| P1nkys PestController ||
||===========================||
|| February 9th, 2012 ||
||===========================||
Worked For 9 Hours, 18 Minutes and 43 Seconds
Games Played 159
||===========================||

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 1st, 2012 ||
||===========================||
Worked For 6 Hours, 8 Minutes and 37 Seconds
Games Played 112
Won 71 Games
Lose 6 Games
||===========================||
||===========================||
||===========================||
Got 194 points
NextPlayer(False)



||===========================||
|| P1nkys PestController ||
||===========================||
|| February 4th, 2012 ||
||===========================||
Worked For 6 Hours, 12 Seconds
Games Played 107
Won 90 Games
Lose 8 Games
||===========================||
||===========================||
||===========================||

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 4th, 2012 ||
||===========================||
Worked For 6 Hours, 31 Seconds
Games Played 124
Won 159 Games
Lose 10 Games
Reward 44
||===========================||
||===========================||
||===========================||[/PHP][/QUOTE]


nice, does everybody has same as me? "client token error" after like 3-6hrs?
it seems like you can run for 11 hrs a row

InH

2012-03-01 17:21:15

From: werder

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 4th, 2012 ||
||===========================||
Worked For 6 Hours, 12 Seconds
Games Played 107
Won 90 Games
Lose 8 Games
||===========================||
||===========================||
||===========================||

||===========================||
|| P1nkys PestController ||
||===========================||
|| February 4th, 2012 ||
||===========================||
Worked For 6 Hours, 31 Seconds
Games Played 124
Won 159 Games
Lose 10 Games
Reward 44
||===========================||
||===========================||
||===========================||[/PHP]



nice, does everybody has same as me? "client token error" after like 3-6hrs?
it seems like you can run for 11 hrs a row
they added/had breaks taken.. If you have your account logout and sit in lobby for a while it kind've bypasses this I believe.

Holako

2012-03-01 17:51:56

I am 100 cb and it doesnt want to get in vetern boat
it goes to intermediate when i am standing next to the vetern one
any help?

InH

2012-03-01 18:10:41

From: Holako
I am 100 cb and it doesnt want to get in vetern boat
it goes to intermediate when i am standing next to the vetern one
any help?


Remove VK_Down in the "Plank" part of the script.

Just removed it quick, hope you don't mind P1nky.
program PestControllerBETA;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController
//BETA Version

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = False;
QuickPrayer = False; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]

procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
FindNormalRandoms;
wait(Random(100) + 20);
FindLamp('Woodcutting');
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 901;
dtmMainPoint.y := 138;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 65535;
dtmMainPoint.Tolerance := 25;
dtmSubPoints[0].x := 901;
dtmSubPoints[0].y := 138;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 65535;
dtmSubPoints[0].Tolerance := 25;
dtmSubPoints[1].x := 902;
dtmSubPoints[1].y := 133;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 2714760;
dtmSubPoints[1].Tolerance := 25;
dtmSubPoints[2].x := 907;
dtmSubPoints[2].y := 139;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2714760;
dtmSubPoints[2].Tolerance := 25;
dtmSubPoints[3].x := 901;
dtmSubPoints[3].y := 145;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2714760;
dtmSubPoints[3].Tolerance := 25;
dtmSubPoints[4].x := 896;
dtmSubPoints[4].y := 137;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 2714760;
dtmSubPoints[4].Tolerance := 25;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
MakeCompass('S');
FindRandoms;
begin
wait(Random(650) + 500);
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;

function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;


procedure FreeDTMS;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
end;

begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayer;
Inc(counter);
repeat
begin
FreeDTMS;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
until (false);
end;
end.

P1nky

2012-03-01 18:18:29

From: InH
Remove VK_Down in the "Plank" part of the script.

Just removed it quick, hope you don't mind P1nky.
program PestControllerBETA;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController
//BETA Version

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = False;
QuickPrayer = False; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]

procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
FindNormalRandoms;
wait(Random(100) + 20);
FindLamp('Woodcutting');
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 901;
dtmMainPoint.y := 138;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 65535;
dtmMainPoint.Tolerance := 25;
dtmSubPoints[0].x := 901;
dtmSubPoints[0].y := 138;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 65535;
dtmSubPoints[0].Tolerance := 25;
dtmSubPoints[1].x := 902;
dtmSubPoints[1].y := 133;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 2714760;
dtmSubPoints[1].Tolerance := 25;
dtmSubPoints[2].x := 907;
dtmSubPoints[2].y := 139;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2714760;
dtmSubPoints[2].Tolerance := 25;
dtmSubPoints[3].x := 901;
dtmSubPoints[3].y := 145;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2714760;
dtmSubPoints[3].Tolerance := 25;
dtmSubPoints[4].x := 896;
dtmSubPoints[4].y := 137;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 2714760;
dtmSubPoints[4].Tolerance := 25;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
MakeCompass('S');
FindRandoms;
begin
wait(Random(650) + 500);
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;

function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;


procedure FreeDTMS;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
end;

begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayer;
Inc(counter);
repeat
begin
FreeDTMS;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
until (false);
end;
end.

Totally find, so y'all want a option for novice/intermediate/veteran?

I'll get that updated on next update!

Holako

2012-03-01 18:24:44

From: InH
Remove VK_Down in the "Plank" part of the script.

Just removed it quick, hope you don't mind P1nky.
program PestControllerBETA;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController
//BETA Version

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = False;
QuickPrayer = False; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]

procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
FindNormalRandoms;
wait(Random(100) + 20);
FindLamp('Woodcutting');
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 901;
dtmMainPoint.y := 138;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 65535;
dtmMainPoint.Tolerance := 25;
dtmSubPoints[0].x := 901;
dtmSubPoints[0].y := 138;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 65535;
dtmSubPoints[0].Tolerance := 25;
dtmSubPoints[1].x := 902;
dtmSubPoints[1].y := 133;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 2714760;
dtmSubPoints[1].Tolerance := 25;
dtmSubPoints[2].x := 907;
dtmSubPoints[2].y := 139;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2714760;
dtmSubPoints[2].Tolerance := 25;
dtmSubPoints[3].x := 901;
dtmSubPoints[3].y := 145;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2714760;
dtmSubPoints[3].Tolerance := 25;
dtmSubPoints[4].x := 896;
dtmSubPoints[4].y := 137;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 2714760;
dtmSubPoints[4].Tolerance := 25;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
MakeCompass('S');
FindRandoms;
begin
wait(Random(650) + 500);
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;

function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;


procedure FreeDTMS;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
end;

begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayer;
Inc(counter);
repeat
begin
FreeDTMS;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
until (false);
end;
end.



thanks you very much
worked! :)

Holako

2012-03-01 18:28:06

From: P1nky
Totally find, so y'all want a option for novice/intermediate/veteran?

I'll get that updated on next update!


yes plz :)

P1nky

2012-03-02 03:35:04

Uploaded [F].

-Fixed finding pest/plank.
-A lot of tweaks.


Cheers.

Kajutsky

2012-03-02 03:41:01

From: P1nky
Uploaded [F].

-Fixed finding pest/plank.
-A lot of tweaks.


Cheers.


By any chance is the bot able to attack all pests and/or portals?

P1nky

2012-03-02 03:45:26

From: dgpro
By any chance is the bot able to attack all pests and/or portals?


I'll work on that after I finish up my SoulWar bot.

Holako

2012-03-02 10:10:54

not finding the vetern boat in version f

superbuster4

2012-03-02 10:13:17

so does this run well now?

Ashihtaka

2012-03-02 17:22:24

From: superbuster4
so does this run well now?


Run it and see. It works well for me, except sometimes gets stuck

Ashihtaka

2012-03-02 17:26:39

P1nky, is there any way you can stop the pointer from clicking the tree stump near the centre of the field?
Some colour must be too similar to it.

Also, I keep getting this message:

Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.

InH

2012-03-02 17:44:58

From: ashihtaka
P1nky, is there any way you can stop the pointer from clicking the tree stump near the centre of the field?
Some colour must be too similar to it.

Also, I keep getting this message:

Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.


Ignore that message, and for the tree stump.. Use the new one he posted with updated colors.


Meh, went to that middle one again(not with new update this was like 1-2 days ago)
||===========================||
|| P1nkys PestController ||
||===========================||
|| March 2nd, 2012 ||
||===========================||
Worked For 9 Hours, 53 Minutes and 29 Seconds
Games Played 74
||===========================||

bnorman93

2012-03-02 19:11:42

function IsFKeyDown(FKey : integer) : boolean;
begin
if not InRange(FKey,1,12) then
raiseexception(erCustomError,'FKey not in range 1..12');
result := IsKeyDown(VK_F1 + FKey - 1);
end;

function GetColors(Coords : TPointArray) : TIntegerArray;
begin
GetColorsWrap(Coords,Result);
end;

procedure ColorToRGB(Color : TColor; var R,G,B : integer);
begin
R := Color and $ff;
G := Color shr 8 and $ff;
B := Color shr 16 and $ff;
end;

function Degrees(Radians: Extended): Extended;

Ashihtaka

2012-03-02 21:11:10

@InH, I always use the most updated version, but sometimes it still happens.

This is an excellent script if you babysit every hour or so though, good proggy so far:


||===========================||
|| P1nkys PestController ||
||===========================||
|| March 2nd, 2012 ||
||===========================||
Worked For 3 Hours, 20 Minutes and 6 Seconds
Games Played 64
||===========================||

Ashihtaka

2012-03-02 23:07:43

Updated proggy, worked very well today, so long that I manually closed it after 100 games

||===========================||
|| P1nkys PestController ||
||===========================||
|| March 2nd, 2012 ||
||===========================||
Worked For 5 Hours, 15 Minutes and 2 Seconds
Games Played 100
||===========================||

Shawn1993

2012-03-03 02:09:11

Hello, i see there are multiple kinds of these script like [F] [D] and beta, which one is best to use? Also does it work 100%, and do i need to update anything for it to function?

superbuster4

2012-03-03 09:39:41

big issue goes to the other fence.

samj123

2012-03-03 10:15:01

This keeps running to the middle and thats it

Ashihtaka

2012-03-03 10:34:41

From: Shawn1993
Hello, i see there are multiple kinds of these script like [F] [D] and beta, which one is best to use? Also does it work 100%, and do i need to update anything for it to function?


download the latest version (f), and just run it

Ashihtaka

2012-03-03 10:35:56

From: samj123
This keeps running to the middle and thats it


that's the point of the script, go to middle, attack shifters, earn points.

superbuster4

2012-03-03 13:03:34

ok horrible today seems like all pest ppl are bots and it crashed cause it keeps running outside of the fence. version F

P1nky

2012-03-03 20:04:23

From: superbuster4
ok horrible today seems like all pest ppl are bots and it crashed cause it keeps running outside of the fence. version F


Once I release my sw bot, this will change and also Don't worry I'll check it out!

Ashihtaka

2012-03-03 21:15:38

From: P1nky
Once I release my sw bot, this will change and also Don't worry I'll check it out!


I'm looking forward to that release.

After getting everything set up properly, and removing the vk_down camera angle line of code, everything ran very smoothly for me,
and got me max (500) points while I slept for longer than 8 hours.

This is now the best public script I've successfully ran on SRL forums, thanks P1nky.

tomdingo95

2012-03-04 09:12:08

i run the bot from the boat and i just walks into a random empty space it doesnt go near the void knight or attacks things i gotta put it there myself

miniman1928

2012-03-04 13:39:47

what file do i download?
also, what is libsmart32. it says that the plugin cannot be found?

whatev

2012-03-04 14:26:57

Script runs great. I'm using it with the new smart manager and I'm wondering how to get it to pick a pest control world on script start, because its just choosing a random world right now.

edit: now that i've picked w53 once (at script start) it seems to rejoin that world if it gets logged out

Epicbotter

2012-03-04 17:12:45

This doesn't work for me It just loads SMART.. Nothing in the debug

Ashihtaka

2012-03-04 21:02:06

From: Epicbotter
This doesn't work for me It just loads SMART.. Nothing in the debug


make sure to enter all your info before you start, and wait infront of a boat.

dragonbotz

2012-03-05 23:23:53

The script was perfect but recently I've had this error that I can't seem to figure out:
[Error] (39:3): Unknown identifier 'FindLamp' at line 38
Compiling failed.

MatchRev

2012-03-05 23:43:56

From: dragonbotz
The script was perfect but recently I've had this error that I can't seem to figure out:
[Error] (39:3): Unknown identifier 'FindLamp' at line 38
Compiling failed.



Exact same problem is happening with me. I even tried loading a fresh version F off this site and an earlier version of this script but the problem is still there.

P1nky

2012-03-06 00:01:50

From: dragonbotz
The script was perfect but recently I've had this error that I can't seem to figure out:
[Error] (39:3): Unknown identifier 'FindLamp' at line 38
Compiling failed.


From: MatchRev
Exact same problem is happening with me. I even tried loading a fresh version F off this site and an earlier version of this script but the problem is still there.


Did y'all update SRL?

makezi

2012-03-06 00:16:50

No SRL update available.

And still same problem for me

dangermanz

2012-03-06 00:23:40

[Error] (39:1): Unknown identifier 'FindLamp' at line 38
Compiling failed. :S

P1nky

2012-03-06 00:25:52

I think the new update that fixed the randoms caused this, wait till tomorrow I'll find out.

dangermanz

2012-03-06 00:26:32

Full Update :/

dangermanz

2012-03-06 00:28:23

thank you very much :)

Snozzberries

2012-03-06 06:05:39

It keeps sneaking into the intermediate boat (which at night hours has no one ) :(

Sirenia

2012-03-06 06:12:58

Is it possible for me to try to pick new colors for stuff so it will work for the hardest boat? =D

halloweener

2012-03-06 10:52:22

[Hint] C:\Simba\Includes\SRL/SRL/core/text.simba(684:3): Variable 'I' never used at line 683
[Hint] C:\Simba\Includes\SRL/SRL/core/text.simba(684:3): Variable 'J' never used at line 683
[Hint] C:\Simba\Includes\SRL/SRL/core/antirandoms\beekeeper.simba(194:3): Variable 'T' never used at line 193
[Error] (39:3): Unknown identifier 'FindLamp' at line 38
Compiling failed.

please anybody help?
this script worked fine at night :/

Gestapo

2012-03-06 12:21:51

same problem here ^^

halloweener

2012-03-06 12:27:55

someone help us please or P&kiny please update because this script was awesome ^^

Please

2012-03-06 15:32:20

Please help p1nky I love the script man. It is one of the nicest running scripts.
I started getting this same error this morning.
[Error] (39:3): Unknown identifier 'FindLamp' at line 38
Compiling failed.

Gestapo

2012-03-06 15:32:34

can this be fixed soon please p1nky:D

P1nky

2012-03-06 19:03:48

FIX:

program PestControllerBETA;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController
//BETA Version

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = False;
QuickPrayer = False; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]

procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
FindNormalRandoms;
wait(Random(100) + 20);
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 901;
dtmMainPoint.y := 138;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 65535;
dtmMainPoint.Tolerance := 25;
dtmSubPoints[0].x := 901;
dtmSubPoints[0].y := 138;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 65535;
dtmSubPoints[0].Tolerance := 25;
dtmSubPoints[1].x := 902;
dtmSubPoints[1].y := 133;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 2714760;
dtmSubPoints[1].Tolerance := 25;
dtmSubPoints[2].x := 907;
dtmSubPoints[2].y := 139;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2714760;
dtmSubPoints[2].Tolerance := 25;
dtmSubPoints[3].x := 901;
dtmSubPoints[3].y := 145;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2714760;
dtmSubPoints[3].Tolerance := 25;
dtmSubPoints[4].x := 896;
dtmSubPoints[4].y := 137;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 2714760;
dtmSubPoints[4].Tolerance := 25;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
MakeCompass('S');
FindRandoms;
begin
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;

function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;


procedure FreeDTMS;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
end;

begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayer;
Inc(counter);
repeat
begin
FreeDTMS;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
until (false);
end;
end.

jonjon4012

2012-03-06 21:06:06

the fix had errors compiling for me, anyone else?

stray247

2012-03-06 23:36:58

after fix

[Error] (611:11): Duplicate identifier 'FREEDTMS' at line 610
Compiling failed.

prostaker

2012-03-07 01:50:48

Having same problem

uujee4

2012-03-07 10:12:55

me too

thenewbie

2012-03-07 15:42:10

Hey love this script!!!

but i have 2 things i want to ask/report

1) when i stand outside the plank (to get into the boat after a game) it always moves the camera angle so the void flag is in the screen and blocking the plank and the bot seems to get stuck alot (vet boat)

2) when the same just started and its about to run in the middle it always clicks on the same spot (near some bush) then goes in the middle :/

but appart from that your doing an amazing job!

P1nky

2012-03-07 15:46:10

FIX 2:

program PestControllerBETA;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController
//BETA Version

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = False;
QuickPrayer = False; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]

procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
FindNormalRandoms;
wait(Random(100) + 20);
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 901;
dtmMainPoint.y := 138;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 65535;
dtmMainPoint.Tolerance := 25;
dtmSubPoints[0].x := 901;
dtmSubPoints[0].y := 138;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 65535;
dtmSubPoints[0].Tolerance := 25;
dtmSubPoints[1].x := 902;
dtmSubPoints[1].y := 133;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 2714760;
dtmSubPoints[1].Tolerance := 25;
dtmSubPoints[2].x := 907;
dtmSubPoints[2].y := 139;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2714760;
dtmSubPoints[2].Tolerance := 25;
dtmSubPoints[3].x := 901;
dtmSubPoints[3].y := 145;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2714760;
dtmSubPoints[3].Tolerance := 25;
dtmSubPoints[4].x := 896;
dtmSubPoints[4].y := 137;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 2714760;
dtmSubPoints[4].Tolerance := 25;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
MakeCompass('S');
FindRandoms;
begin
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;

function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;




begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayer;
Inc(counter);
repeat
begin
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
until (false);
end;
end.

Tedious

2012-03-07 16:21:34

Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.

And so it runs on random areas at Pest Control.

thenewbie

2012-03-07 16:56:15

To stop it from sneaking off to the intermediate boat search for: KeyDown(VK_Down);

and delete that line, this stops the camera from moving down when infront of the plank and getting stuck because the banner is blocking it which causes the bot to move your character to a different boat

makezi

2012-03-07 17:02:12

[Error] (359:13): Unknown identifier '' at line 358
Compiling failed.

how do i fix this?
and when do you release new downloadable fix?

P1nky

2012-03-07 17:18:42

Can someone please pm me a member account with a weapon.
The account I was using to update this script with has just ran out of members.

Holako

2012-03-07 17:53:14

pinky log in msn and i will give u

P1nky

2012-03-07 17:54:14

From: Holako
pinky log in msn and i will give u


Please pm if so, I am on my sisters laptop and she wouldn't like me to download MSN.

Thanks.

Holako

2012-03-07 18:00:05

i would pm it buy i just want to say that i wont be able to give u it for alot of time
i mean i will need it like 12 hours or something… if that will help

P1nky

2012-03-07 18:06:02

From: Holako
i would pm it buy i just want to say that i wont be able to give u it for alot of time
i mean i will need it like 12 hours or something… if that will help


That's fine. If you want I can run the bot for you, but if you can lend it for just today, well than that be just perfect.

Holako

2012-03-07 18:07:19

okay will pm it in a second

P1nky

2012-03-07 18:10:55

From: Holako
okay will pm it in a second


Thank You, and I got a account now to update this script, so please do not PM Me unless it's important. Expect a update by tonight or so.

-Cheers

P1nky

2012-03-08 00:53:38

*UPDATED TO [G]
  • Added a Novice/Intermediate/Advance.
  • Fixed colors.
  • Should work flawless.

Thank You, and please guys I need p2p accounts…Donations will be perfect.

Ashihtaka

2012-03-08 02:36:02

Hey P1nky, just realized your sw script is 85% done.
I love your pc script, so was wondering will this be public?

Holako

2012-03-08 08:15:36

p1nky script is not doing well .. it doesnt protect knight and it doesnt even attack it just click west of the east tower and stay there

Holako

2012-03-08 08:26:48

nvm i closed simba then opened again and it works fine now :P soz

ttanker1

2012-03-08 08:56:20

wow thanks man !!!! :D finaly a pest control bot what i looking for thanks

l3thaltank

2012-03-09 00:26:34

Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
these are appearing when i try and run your latest release and when it does get into game it doesnt click the chat message or move at all it just stands on boat

phrenism

2012-03-09 00:34:38

From: l3thaltank
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
these are appearing when i try and run your latest release and when it does get into game it doesnt click the chat message or move at all it just stands on boat


Same here.

P1nky

2012-03-09 00:53:21

From: l3thaltank
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
these are appearing when i try and run your latest release and when it does get into game it doesnt click the chat message or move at all it just stands on boat


ignore this:
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.

Cap'n n Arnav is a random, a problem probably occurred?

l3thaltank

2012-03-09 02:29:45

well the problem with the cap'n arnav is that it does it over and over and over again and never does anything else after that and script stops after first boat (it just sits on boat and never gets out of the initial chat window)

P1nky

2012-03-09 03:11:31

From: l3thaltank
well the problem with the cap'n arnav is that it does it over and over and over again and never does anything else after that and script stops after first boat (it just sits on boat and never gets out of the initial chat window)


Can you do me a favor and post a screenshot?

Nhi

2012-03-09 03:42:41

Wow this script is awsome! i totally love it!

phrenism

2012-03-09 03:59:13

The cap. arnav thing is frustrating, i'll try and play around with the script and see if i can fix it.

Edit: Coh3n and a few others may be able to make a quick fix to the capnarnav script. or.. Maybe captain arnav is the new pest control boat captain :p. I personally just removed it from antirandoms, it's not likely you'll get that random anyways. Maybe i can make myself a capnarnav version for this script if i have time

BTW, very nice work p1nky, can't wait for your sw script.

prostaker

2012-03-09 04:04:07

allright, i am having exactly the same problem. I run the script. Character goes to boat, and this thing starts:
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
…
I have tryed updating simba, srl, sps, but nothing seems to help.
Also i tought that it might have been a one time only problem, so i restarted simba - no effect, still same problem. Then i restarted my computer - problem was still there. Then I re-installed simba and JRE. Problem was still there.

Hope that it helped for you to figure out what is the problem, because i have no clue :S. Also i noticed that one time, when that msg appeared the mouse pointer was "shaking" over one "voids of destruction" clann player, who was wearing a clanncape. But i noticed it only once, so i dont think that is the problem.

klit rs

2012-03-09 05:30:24

I dont think the Arnav problem is a problem with this script, but actually it is with the Arnav script itself…. I hope this gets fixed soon :)

phrenism

2012-03-09 13:37:21

Yeah klit, the output:
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM

is from caparnav.simba in antirandoms includes. No idea why it's being triggered on the PC starting area and boat, though. Whoever figures it out deserves a cookie :)

P1nky

2012-03-09 13:40:11

From: prostaker
allright, i am having exactly the same problem. I run the script. Character goes to boat, and this thing starts:
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
…
I have tryed updating simba, srl, sps, but nothing seems to help.
Also i tought that it might have been a one time only problem, so i restarted simba - no effect, still same problem. Then i restarted my computer - problem was still there. Then I re-installed simba and JRE. Problem was still there.

Hope that it helped for you to figure out what is the problem, because i have no clue :S. Also i noticed that one time, when that msg appeared the mouse pointer was "shaking" over one "voids of destruction" clann player, who was wearing a clanncape. But i noticed it only once, so i dont think that is the problem.


From: phrenism
The cap. arnav thing is frustrating, i'll try and play around with the script and see if i can fix it.

Edit: Coh3n and a few others may be able to make a quick fix to the capnarnav script. or.. Maybe captain arnav is the new pest control boat captain :p. I personally just removed it from antirandoms, it's not likely you'll get that random anyways. Maybe i can make myself a capnarnav version for this script if i have time

BTW, very nice work p1nky, can't wait for your sw script.


From: l3thaltank
well the problem with the cap'n arnav is that it does it over and over and over again and never does anything else after that and script stops after first boat (it just sits on boat and never gets out of the initial chat window)


From: l3thaltank
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
CA_TalkToArnav: Didn't click Arnav DTM
CA_TalkToArnav: Talking to Cap'n Arnav
these are appearing when i try and run your latest release and when it does get into game it doesnt click the chat message or move at all it just stands on boat


From: phrenism
Yeah klit, the out:
CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM

is from caparnav.simba in antirandoms includes. No idea why it's being triggered on the PC starting area and boat, though. Whoever figures it out deserves a cookie :)


From: klit rs
I dont think the Arnav problem is a problem with this script, but actually it is with the Arnav script itself…. I hope this gets fixed soon :)


I posted on the thread, hope to see a answer.

FIX (but using this fix will NOT solve any randoms.)
program PestControllerBETA;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController
//BETA Version

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = False;
QuickPrayer = False; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]
WhatBoat = 'N';{
Intermediate
Advance
Novice }





procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
// FindNormalRandoms;
wait(Random(100) + 20);
exit;
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 629;
dtmMainPoint.y := 164;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 125670;
dtmMainPoint.Tolerance := 18;

dtmSubPoints[0].x := 629;
dtmSubPoints[0].y := 164;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 125670;
dtmSubPoints[0].Tolerance := 18;

dtmSubPoints[1].x := 627;
dtmSubPoints[1].y := 156;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 3042439;
dtmSubPoints[1].Tolerance := 18;

dtmSubPoints[2].x := 635;
dtmSubPoints[2].y := 165;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3042439;
dtmSubPoints[2].Tolerance := 18;

dtmSubPoints[3].x := 630;
dtmSubPoints[3].y := 171;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3042439;
dtmSubPoints[3].Tolerance := 18;

dtmSubPoints[4].x := 622;
dtmSubPoints[4].y := 165;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3042439;
dtmSubPoints[4].Tolerance := 18;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
FindRandoms;
case WhatBoat of
'N','n','novice','Novice','I','inter','i','Intermediate','intermediate' :
begin
MakeCompass('S');
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
end;
'A','a','adv','advance','Advance' :
begin
MakeCompass('N');
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
end;
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983,3162776], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;

function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;


procedure FreeMem;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
end;

begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayer;
Inc(counter);
repeat
begin
FreeMem;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
until (false);
end;
end.

vcheckv

2012-03-09 23:09:07

sxc , thanks brah.

Kajutsky

2012-03-10 06:16:14

From: P1nky
I posted on the thread, hope to see a answer.

FIX (but using this fix will NOT solve any randoms.)
program PestControllerBETA;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController
//BETA Version

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = False;
QuickPrayer = False; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]
WhatBoat = 'N';{
Intermediate
Advance
Novice }





procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
// FindNormalRandoms;
wait(Random(100) + 20);
exit;
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 629;
dtmMainPoint.y := 164;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 125670;
dtmMainPoint.Tolerance := 18;

dtmSubPoints[0].x := 629;
dtmSubPoints[0].y := 164;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 125670;
dtmSubPoints[0].Tolerance := 18;

dtmSubPoints[1].x := 627;
dtmSubPoints[1].y := 156;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 3042439;
dtmSubPoints[1].Tolerance := 18;

dtmSubPoints[2].x := 635;
dtmSubPoints[2].y := 165;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3042439;
dtmSubPoints[2].Tolerance := 18;

dtmSubPoints[3].x := 630;
dtmSubPoints[3].y := 171;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3042439;
dtmSubPoints[3].Tolerance := 18;

dtmSubPoints[4].x := 622;
dtmSubPoints[4].y := 165;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3042439;
dtmSubPoints[4].Tolerance := 18;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
FindRandoms;
case WhatBoat of
'N','n','novice','Novice','I','inter','i','Intermediate','intermediate' :
begin
MakeCompass('S');
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
end;
'A','a','adv','advance','Advance' :
begin
MakeCompass('N');
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
end;
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983,3162776], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;

function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;


procedure FreeMem;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
end;

begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayer;
Inc(counter);
repeat
begin
FreeMem;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
until (false);
end;
end.

somehow i can't copy and paste that :(

RuneR4p3d

2012-03-10 12:28:00

It keeps going north east by the center and twitches camera

US Marine

2012-03-10 18:07:16

From: P1nky
I posted on the thread, hope to see a answer.

FIX (but using this fix will NOT solve any randoms.)
program PestControllerBETA;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController
//BETA Version

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = False;
QuickPrayer = False; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]
WhatBoat = 'N';{
Intermediate
Advance
Novice }





procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
// FindNormalRandoms;
wait(Random(100) + 20);
exit;
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 629;
dtmMainPoint.y := 164;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 125670;
dtmMainPoint.Tolerance := 18;

dtmSubPoints[0].x := 629;
dtmSubPoints[0].y := 164;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 125670;
dtmSubPoints[0].Tolerance := 18;

dtmSubPoints[1].x := 627;
dtmSubPoints[1].y := 156;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 3042439;
dtmSubPoints[1].Tolerance := 18;

dtmSubPoints[2].x := 635;
dtmSubPoints[2].y := 165;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3042439;
dtmSubPoints[2].Tolerance := 18;

dtmSubPoints[3].x := 630;
dtmSubPoints[3].y := 171;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3042439;
dtmSubPoints[3].Tolerance := 18;

dtmSubPoints[4].x := 622;
dtmSubPoints[4].y := 165;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3042439;
dtmSubPoints[4].Tolerance := 18;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
FindRandoms;
case WhatBoat of
'N','n','novice','Novice','I','inter','i','Intermediate','intermediate' :
begin
MakeCompass('S');
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
end;
'A','a','adv','advance','Advance' :
begin
MakeCompass('N');
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
end;
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983,3162776], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;

function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;


procedure FreeMem;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
end;

begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayer;
Inc(counter);
repeat
begin
FreeMem;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
until (false);
end;
end.


THANK YOU! Works amazing now. Been watching it for a good 25minutes, no failures yet.

<3

lotery33

2012-03-10 18:09:26

ran for 1 hour good and is still running, but when i watched it for a while i noticed that it clicks random things and moves mouse around a little too much
edit:
got stuck here

also has a lot of trouble on getting on the boat

weequ

2012-03-10 20:28:42

P1nky you only need to check for randoms outside of the boat. You could make it to check for randoms only if it fails to enter the boat.

lotery33

2012-03-10 21:06:38

another bug: inside the game, it starts to hover over a tree stump and not do anything

Shavonda

2012-03-10 21:46:32

How do you fix the [Error] (35:5): Unknown identifier 'FindLamp' at line 34
Compiling failed.

stuff?

bluephx2

2012-03-11 01:25:50

"[Error] (35:5): Unknown identifier 'FindLamp' at line 34
Compiling failed." Help, im new to all of this and i just dont understand that well

P1nky

2012-03-11 01:35:41

From: lotery33
ran for 1 hour good and is still running, but when i watched it for a while i noticed that it clicks random things and moves mouse around a little too much
edit:
got stuck here

also has a lot of trouble on getting on the boat

what boat?

From: weequ
P1nky you only need to check for randoms outside of the boat. You could make it to check for randoms only if it fails to enter the boat.


But the captain arrv random was giving people problems, so I took out findnormalrandom.

tisin

2012-03-11 01:36:37

[Error] (38:5): Unknown identifier 'FindLamp' at line 37
Compiling failed.

Running the P1nky Pestcontroll [D]

[Hint] (778:3): Variable 'ANSWER' never used at line 777
[Hint] (778:3): Variable 'WC' never used at line 777
[Hint] (977:3): Variable 'CTS' never used at line 976
[Error] (1060:12): Duplicate identifier 'FREEDTMS' at line 1059
Compiling failed.

still running P1nky Pestcontroller [D]

US Marine

2012-03-11 06:00:15

I have no idea why all these people are having such large amounts of trouble using this script!

I copy and pasted it into my Simba and its running completely fine.

Ran it for 6hours and 34minutes, found it had logged out at 6hours.

Just stopped it to reboot computer at 4hours 48minutes.
—
Not the script.

Skywalk

2012-03-11 06:27:52

i love this script got me full void in 3-4 days :P
works flawless with me

xjazza

2012-03-11 08:37:59

From: Shavonda
How do you fix the [Error] (35:5): Unknown identifier 'FindLamp' at line 34
Compiling failed.

stuff?


Delete part of the script.

Worked for me

Also, @Pinky, if it is attacking shifters next to the void night and the shifter teleports away, the character chases it and doesnt run back onto the platform. ^^

timrocks

2012-03-11 10:09:03

The latest version of the script doesnt work at all! It goes into the boat and it is waiting all the time and doing nothing even when it reached the island. Does the older version work better?

Thanks.

Edit: I get this error.


CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM

Specter

2012-03-11 11:15:16

can someone tell me how to take out: findnormalrandom?

i want to disable the capn arav thing…

siyao

2012-03-11 15:19:49

where is version F, that works flawless

prostaker

2012-03-11 16:51:38

I just want to say to P1nky that never mind those "i-will-never-learn-to-script-so-i-complain" nubs. You sir have done an amazing job creating this script and for that i give you KUDOS!


Your friend,
Cuck
:norris:

Propel

2012-03-11 18:44:40

From: prostaker
I just want to say to P1nky that never mind those "i-will-never-learn-to-script-so-i-complain" nubs. You sir have done an amazing job creating this script and for that i give you KUDOS!


Your friend,
Cuck
:norris:


Complaining? More like telling him problems with his script so he can possibly fix them. :norris:

lotery33

2012-03-11 21:27:41

From: P1nky
what boat?



But the captain arrv random was giving people problems, so I took out findnormalrandom.


novice

Specter

2012-03-12 10:57:11

P1nky,

it isnt attacking any portals…
it only defends the void knight?

can i change that or is it just defending?

Specter

archerpk1994

2012-03-12 13:14:29

For me it doesn't do anything, I'm having the problem with Cap'n Arnav. :C

P1nky

2012-03-12 15:38:06

From: archerpk1994
For me it doesn't do anything, I'm having the problem with Cap'n Arnav. :C

Re-download [G]
From: Specter
P1nky,

it isnt attacking any portals…
it only defends the void knight?

can i change that or is it just defending?

Specter

Defends atm only.


From: prostaker
I just want to say to P1nky that never mind those "i-will-never-learn-to-script-so-i-complain" nubs. You sir have done an amazing job creating this script and for that i give you KUDOS!


Your friend,
Cuck
:norris:

Appreciate it Mate.

From: timrocks
The latest version of the script doesnt work at all! It goes into the boat and it is waiting all the time and doing nothing even when it reached the island. Does the older version work better?

Thanks.

Edit: I get this error.


CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM


Re-download [G]

kcbme

2012-03-12 16:43:55

CA_TalkToArnav: Talking to Cap'n Arnav
CA_TalkToArnav: Didn't click Arnav DTM
Re-download [G]

Still did not fix :/

phrenism

2012-03-12 23:26:48



I just want to say to P1nky that never mind those "i-will-never-learn-to-script-so-i-complain" nubs. You sir have done an amazing job creating this script and for that i give you KUDOS!



Agreed. It takes around 15 seconds to fix the problem, it takes more time than that to make a post.

prostaker

2012-03-13 06:02:15

From: phrenism
Agreed. It takes around 15 seconds to fix the problem, it takes more time than that to make a post.


Exactly my point :) :garfield:

Kajutsky

2012-03-13 06:10:49

hehe would any1 recommend me to use this script? as im not sure

Kristoffer

2012-03-13 06:37:05

Mine is to defensive it doesnt attack the monster just staying at a place, and i dont get points.

P1nky

2012-03-13 16:11:27

From: Kristoffer
Mine is to defensive it doesnt attack the monster just staying at a place, and i dont get points.


What boat are you using? and it does not attack at all, or does it at least attempt to?

boobies

2012-03-13 18:05:07

Great script, running flawless never miss a game

Zockuito

2012-03-13 20:20:42

Awesome awesome script! :D Maybe I can finally get my hyrbid junk… Or 99 prayer. :D 250 games in 12 hours is 1000 commendation points… I think it is 13k for 99 prayer… :O Not bad! :D The only problem is sometimes it goes into the wrong boat, so I kinda have to babysit. No big deal though. :D Great script, thanks so much!

tisin

2012-03-14 00:59:40

Miss clicks. doesn't change to the plank just keeps clicking.

http://s1240.photobucket.com/albums/gg497/tisin20/?action=view¤t=P1nkyPestControllerMissClicking.jpg

P1nky

2012-03-14 01:55:07

From: tisin
Miss clicks. doesn't change to the plank just keeps clicking.

http://s1240.photobucket.com/albums/gg497/tisin20/?action=view¤t=P1nkyPestControllerMissClicking.jpg


Go to the Graphic option, go to the lowest;

Jac

2012-03-14 17:41:49

From: Kristoffer
Mine is to defensive it doesnt attack the monster just staying at a place, and i dont get points.


Any way to make the defense a bit more aggressive? I'd have more winning games if I would contribute more ;-)

Excellent script otherwise (does have some issues finding the plank, lol)

umadm8?

2012-03-14 19:32:07

Little thing i noticed, due to the new armor update, the color of Red D'Hide is almost the same as the Red Shifter. The bot misclicked on a person in such shit armor like 3 times before going to a green shifter. Overall tho this bot is great, runs perfectly, it does act a little slow sometimes tho, i recommend running with auto retaliate on, so that if you get dragged behind a gate, the occasional monster will attack you, and keep you in the game. So it looks more like you are afking rather than botting.

Sweet Action

2012-03-15 12:37:22

When I try to run the bot everything seems to be working fine but the bot doesn't do anything. No clicks or log-outs or any typing, it just sits. What's going on here?

Sweet Action

2012-03-15 12:39:29

I set up my simba just fine, I read a in-depth guide on how to do so.

jake 007 9

2012-03-15 19:25:35

I am getting some bugs when using version [G]
-camera moves allot
-does not walk to the void to protect him

i am using version [D] now and its working great ill post proggy in the morning.

US Marine

2012-03-15 22:01:24

Weird… Its starting to do the randomly clicking in the middle of the ocean bullcrap like it used to do when I first used the script.

I'v been using it without problems for about a week now.

This is what im getting, again:
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.

Problem:
Plays one complete game perfectly fine. Wins, gets right by plank and goes into the ocean and spam clicks the wave effects in the middle of the water.

I have used this bots for months and it have been great, cant be my graphics or anything of that sort.
–
Anyone else having the same problem?

nitroxx0025

2012-03-16 07:31:14

this might be a noob question but what does it when it has max points does it buy somthing or just auto log off ?

P1nky

2012-03-17 03:56:02

From: Usmarine
Weird… Its starting to do the randomly clicking in the middle of the ocean bullcrap like it used to do when I first used the script.

I'v been using it without problems for about a week now.

This is what im getting, again:
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.

Problem:
Plays one complete game perfectly fine. Wins, gets right by plank and goes into the ocean and spam clicks the wave effects in the middle of the water.

I have used this bots for months and it have been great, cant be my graphics or anything of that sort.
–
Anyone else having the same problem?

What Boat are you using Mate?
From: nitroxx0025
this might be a noob question but what does it when it has max points does it buy somthing or just auto log off ?


Keep spending your points.

Bobby Booshay

2012-03-17 17:42:10

Epic script! Flawless victory!

FifthDimension

2012-03-18 11:28:39

Broken as expected :), had to manually go to w53, manually walk the plank (no pun intended) then it just moved the camera around a lot, and didn't attack anything. Derp.

Convex

2012-03-18 20:19:15

Pest Control is dead for me. There is nobody in the Pest Control worlds? Are there like worlds where they actually play Pest Control?

P1nky

2012-03-18 21:41:37

Will update this script soon hopefully by Wenesday.

prostatus

2012-03-19 00:08:19

37 FindLamp('Woodcutting'); has a error and wont compile

nitroxx0025

2012-03-19 04:47:49

From: convex
pest control is dead for me. There is nobody in the pest control worlds? Are there like worlds where they actually play pest control?


world 53

lol_monkyy

2012-03-19 14:42:42

Wow, very complex scripting. Good job.

dragonbotz

2012-03-19 15:04:00

This script is working perfect for me. One thing I noticed is if you're using smart manager to make the enable fail safe turned off. Also, this script chooses trickster boots for a reward anytime. Anyway I can change the code to choose different boots or just wait until then and choose them myself?

US Marine

2012-03-19 19:09:38

From: P1nky
What Boat are you using Mate?





Im using the novice boat, sorry for the long long looonnnggg time in replying to your message. Im using a different version of the script to get it to work. Having no problems with it. ;)

shstiger2009

2012-03-19 19:12:20

From: FifthDimension
Broken as expected :), had to manually go to w53, manually walk the plank (no pun intended) then it just moved the camera around a lot, and didn't attack anything. Derp.


Well that's kind of a douchebag thing to say.

From what I've seen, it works fine for others. Don't put down a scripter.

Muzzi

2012-03-19 19:55:00

Why does it not go to portals and stuff? Just stands in the middle near the knight

kunzy

2012-03-20 03:53:53

cuz it isnt made to attak portals muzzi.. duh lol

tommo1

2012-03-20 10:43:33

It enters the boat fine for me. The only problems i encounter are:
- it goes south-west of the void knight's hill, this causes it not to see the shifters appearing near the void knight. This way it will just stand soutwest near the outpost waiting the whole game to be over and not receive any accomodations.
- when i manually click it to the void knight's hill. There are 3-4 people most of the time which respond faster to appearing shifters. This way the shifter will be dead before i've clicked the bot, so again it will receive no accomodations. (I sometimers barely get 500 hits so i will receive some sometimes)

those are the only problems i encounter. Otherwise i think it looks very good and runs smooth beside those two problems.

BottinHeaven

2012-03-20 11:54:50

From: tommo1
It enters the boat fine for me. The only problems i encounter are:
- it goes south-west of the void knight's hill, this causes it not to see the shifters appearing near the void knight. This way it will just stand soutwest near the outpost waiting the whole game to be over and not receive any accomodations.
- when i manually click it to the void knight's hill. There are 3-4 people most of the time which respond faster to appearing shifters. This way the shifter will be dead before i've clicked the bot, so again it will receive no accomodations. (I sometimers barely get 500 hits so i will receive some sometimes)

those are the only problems i encounter. Otherwise i think it looks very good and runs smooth beside those two problems.


^This, other than that I love this script. Got me 330 commendations through overnight and a couple hours in the day. Love it! Will carry on using it until I get my full void, and possibly all void sets. Thanks for this P1nky!

FifthDimension

2012-03-20 12:07:47

From: shstiger2009
Well that's kind of a douchebag thing to say.

From what I've seen, it works fine for others. Don't put down a scripter.


Naw, unless they are babysitting it and doing 90% of the procedures for it.

swagtothemax

2012-03-20 13:31:36

It sound ssuper great but whenever i run it says Exception in Script: Plugin(libsmart32) has not been found please help??

brentrobbins

2012-03-20 16:23:35

From: FifthDimension
Naw, unless they are babysitting it and doing 90% of the procedures for it.


im sorry, but obviously you are not doing something correct. I have been monitoring this thread for months now and i am very aware that it has been and still is working. You should have all your graphics set to low and fixed and start next to the plank you want to be at. It cant run to the planks seeing as all the planks are the same color. You should start the script in the world you want next to the boat you want to play in. It should do the rest for you.

Chainlord

2012-03-20 23:55:40

it sits at start after you die to monsters :(

tisin

2012-03-21 11:37:04

From: Chainlord
it sits at start after you die to monsters :(


maybe then you should get higher defence

marko1

2012-03-21 11:41:02

Please help, im new to the rs2 community and simba bot,

I am getting this message when trying to run the script,
"formWriteln: [error] (35:5): Unknown identifier ,Findlamp, at line 34
formWriteln: compiling failed.

marko1

2012-03-21 12:08:03

I think i am doing everything as i should, but nothing happens, it loads the script but when i login, then nothing happens, it does not start to auto, can anyone help me please?

tommo1

2012-03-21 12:12:50

it also walks off to the rune store quite some times and just stands there (using advance boat)

Vla

2012-03-21 15:01:25

From: marko1
Please help, im new to the rs2 community and simba bot,

I am getting this message when trying to run the script,
"formWriteln: [error] (35:5): Unknown identifier ,Findlamp, at line 34
formWriteln: compiling failed.


Same here

P1nky

2012-03-22 02:09:14

I need a p2p account with a weapon; PM me, so I can update this script. Other account is in Soul Wars(*hint* soon to be release), and quite lazy to move him outta' there!

-Cheers

i am andy

2012-03-22 16:24:36

formWrittenIn: Exeception in Script: Unable to find files 'srl\srl.simba' used from ' '

WTF?? im new to this kinda of scripting how do i fix this??

P1nky

2012-03-22 17:38:57

From: i am andy
formWrittenIn: Exeception in Script: Unable to find files 'srl\srl.simba' used from ' '

WTF?? im new to this kinda of scripting how do i fix this??


Download SRL and the Includes.


Btw, still need a P2P account so I can update this script.

-Cheers

Omega Supreme

2012-03-22 18:48:28

This worked absolutely fine for me, switched boats randomly once or twice but I kept an eye on it.

For the guy above, Im not too sure how to fix that but try updating all the SLS, SPS and MSI things. It could help!

Edit: I would let you use mine but its a range tank with very particular stats!

CrysisMK2

2012-03-23 11:17:38

It's not running up the pyramid for me anymore, it runs off to the side and stays there. Used to work fine.

prostaker

2012-03-23 15:41:14

From: CrysisMK2
It's not running up the pyramid for me anymore, it runs off to the side and stays there. Used to work fine.


Im expiriencing same thing:garfield:

Edit:

version [D] seems to be working perfectly, it runs on top of the pyramid. Altho there are not any options to choose witch boat to use in version [D], then it seems to be still working. Good old things are built solid :D

jbryers

2012-03-23 17:18:37

how do i download it?

weequ

2012-03-23 17:25:17

From: jbryers
how do i download it?
There is a download link in the first post of this thread. You should download the G version as I think it's the newest.

lightstabo

2012-03-24 07:03:44

Is there some way to make it log into world 53 by itself? I have smart server set to 53 but it doesn't do anything, it just chooses a random server regardless.

Cheers

SXxR

2012-03-24 08:01:40

I always select the world manually, you should too.

SailorJerry

2012-03-24 11:02:32

Does anyone have a points per hour estimate?

Gucci

2012-03-24 12:11:59

Nice script P1NKY it's amazing and I love it, just something I noticed though is when crossing the plank onto the ship it will move the mouse like crazy along the plank and then click the area behind the shops so it walks there and can't get back to the docks.

RSbotter1

2012-03-24 17:03:51

Proggy for you <3


|====================================|
||===========================||
|| P1nkys PestController ||
||===========================||
|| (DATE) ||
||===========================||
Worked For 4 Hours, 44 Minutes and 58 Seconds
Games Played 90

Zeal earned: 160

MatchRev

2012-03-25 05:40:20

The advanced boat script need some serious fixing.

The bot will fail to get on boat and always end up at the top left of pest control island for some reason. This happen after 2 or 3 games, I did not count.

Novice boat script seems to be working well so far though.

feyaerts

2012-03-25 06:52:23

BOt can't get in boat seems like the color from the plank to get in has changed or something??

feyaerts

2012-03-25 07:01:18

Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.

hunters

2012-03-25 11:55:20

my guy gets into the place then it doesnt go up were the guy is with the monsters and just sits there looking for them

Gucci

2012-03-25 11:59:17

From: MatchRev
The advanced boat script need some serious fixing.

The bot will fail to get on boat and always end up at the top left of pest control island for some reason. This happen after 2 or 3 games, I did not count.

Novice boat script seems to be working well so far though.


That's the problem I was having but you can fix it by changing the VK_DOWN to VK_Up in the section where you enter the boat this way it won't lower the camera preventing it from misclicking

connor1003

2012-03-25 19:26:49

thanks, works great away to use over night

TheWord

2012-03-25 21:37:56

Guys I really need help!

I'm confused on the "What boat" thing

Can anyone show me what to put in there? I tried putting Novice in put it wouldnt work

P1nky

2012-03-26 01:55:57

From: TheWord
Guys I really need help!

I'm confused on the "What boat" thing

Can anyone show me what to put in there? I tried putting Novice in put it wouldnt work

Make sure it is between the
' '


Here you go:
 WhatBoat = 'Novice';

iHustle TreeZ

2012-03-26 15:05:11

Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.

keep getting this, mouse keeps going form one end of the board that goes to the boat from the dock to the other, it's only done 4 games in 40 minutes so somethings wrong, any clue?

CrysisMK2

2012-03-26 15:18:37

I modified p1nky's script in some small areas, I have no problems with now. Always finds the gangplank, even if people put clan vexilums in the way. Sped up the clicks, because it is still slower than humans even with faster500 enabled. /shrug

It's here if anyone wants it.

http://dl.dropbox.com/u/65811322/P1nkys%20PestController%5BG.1%5D.simba

If OP wants me to remove the link I will.

feyaerts

2012-03-26 15:30:50

Had a 6hr proggie but forgot to copy it :S now already 2h proggie, i'm trying to get 10hr =D

Zota

2012-03-26 17:52:10

Using it now. Works great. You did really well on this P1nky. Good job man.
Will post proggy in morning!

P.s
I got confused by all the versions on the main post. Why so many versions? What do the letters stand for? Which one should be used? Right now I'm using Beta(B) and it's working like a charm.. so eh..! Just curious.

Thanks again p1nky.
Cheers
Luke

weequ

2012-03-26 18:20:00

From: Zota
Using it now. Works great. You did really well on this P1nky. Good job man.
Will post proggy in morning!

P.s
I got confused by all the versions on the main post. Why so many versions? What do the letters stand for? Which one should be used? Right now I'm using Beta(B) and it's working like a charm.. so eh..! Just curious.

Thanks again p1nky.
Cheers
Luke
I guess the higher the number the newer version. But that doesn't necessary always mean it's most stable.

Zota

2012-03-26 19:01:19

Yep, I'd think that too… but unfortunately he's using alphabetical version naming.

it goes:

pestControlBeta
pestControlBeta(B)
pestControl(C)
pestControl(D)
pestControl(G)

Why isn't there an E version haha? or A ? or … looking at it now maybe the first one counts as A?
so A (B) C D G??

So… *realising I'm using beta B* Oh woah. I'm 3 versions out of date… Yet it's still working perfectly fine? Great! I'll stick with (B)! Unless persuaded otherwise.

So P1nky, which version is newest? G?



|====================================|
| ~ SRL ~ |
| Randoms Report |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
| |
| |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
|====================================|
||===========================||
|| P1nkys PestController ||
||===========================||
|| March 26th, 2012 ||
||===========================||
Worked For 4 Hours, 21 Minutes and 2 Seconds
Games Played 88
Won 72 Games
Lose 14 Games
Reward 7
||===========================||
||===========================||
||===========================||


Edit:
Realised it goes in order from upload. First file = First upload. Last file = Last upload (latest).
Wasn't exactly rocket science.. Moving on swiftly!

P1nky

2012-03-27 03:01:37

Yes, G is the newest;

Here is a fix for [G], will release it officially soon!


program PestControllerBETA;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController
//BETA Version

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = True;
QuickPrayer = True; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]
WhatBoat = 'N';{
Intermediate
Advance
Novice }





procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
// FindNormalRandoms;
wait(Random(100) + 20);
exit;
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 629;
dtmMainPoint.y := 164;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 125670;
dtmMainPoint.Tolerance := 21;

dtmSubPoints[0].x := 629;
dtmSubPoints[0].y := 164;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 125670;
dtmSubPoints[0].Tolerance := 21;

dtmSubPoints[1].x := 627;
dtmSubPoints[1].y := 156;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 3042439;
dtmSubPoints[1].Tolerance := 21;

dtmSubPoints[2].x := 635;
dtmSubPoints[2].y := 165;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3042439;
dtmSubPoints[2].Tolerance := 21;

dtmSubPoints[3].x := 630;
dtmSubPoints[3].y := 171;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3042439;
dtmSubPoints[3].Tolerance := 21;

dtmSubPoints[4].x := 622;
dtmSubPoints[4].y := 165;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3042439;
dtmSubPoints[4].Tolerance := 21;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
FindRandoms;
case WhatBoat of
'N','n','novice','Novice','I','inter','i','Intermediate','intermediate' :
begin
MakeCompass('S');
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
end;
'A','a','adv','advance','Advance' :
begin
MakeCompass('W');
Setangle(0);
{ KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down); }
end;
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983,3162776], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;

function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;


procedure FreeMem;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
end;

begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayer;
Inc(counter);
repeat
begin
FreeMem;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
spot2;
until (false);
end;
end.

kingsleyeng

2012-03-27 03:21:04

been using it for a couple days now like 200 commendations
thanks man

Zota

2012-03-27 04:04:25

I noticed I only get 356 exp for commendation? What happened to that? I used to get 1000 per commendation… Jagex nerfed it? So pestcontrol isn't such a great EXP p/h minigame anymore.

Great script nonetheless.
Luke

P1nky

2012-03-27 04:39:31

From: Zota
I noticed I only get 356 exp for commendation? What happened to that? I used to get 1000 per commendation… Jagex nerfed it? So pestcontrol isn't such a great EXP p/h minigame anymore.

Great script nonetheless.
Luke


because they now give 2 points per game.

coolmanyou1

2012-03-27 13:44:25

From: CrysisMK2
I modified p1nky's script in some small areas, I have no problems with now. Always finds the gangplank, even if people put clan vexilums in the way. Sped up the clicks, because it is still slower than humans even with faster500 enabled. /shrug

It's here if anyone wants it.

http://dl.dropbox.com/u/65811322/P1nkys%20PestController%5BG.1%5D.simba

If OP wants me to remove the link I will.


sadly , your modification is better then his script

teamemb99

2012-03-27 17:33:20

====================================|
| ~ SRL ~ |
| Randoms Report |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
| |
| |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
|====================================|
||===========================||
|| P1nkys PestController ||
||===========================||
|| March 27th, 2012 ||
||===========================||
Worked For 8 Minutes and 14 Seconds
Games Played 1
||===========================||
NPC Message Detected!
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.


help pls

US Marine

2012-03-27 18:20:16

Hey pinky, quick question :)

I have been using your script for a long time now and i enjoy it alot.

I was just wondering if you were ever thinking about making another script.. maybe a Cannon script?

Been wanting to get my pures range up with cannon but its so time consuming.

Any thoughts on it?
:)

kunzy

2012-03-27 20:22:10

use range guild, very good xp and a few scripts here
From: Usmarine
Hey pinky, quick question :)

I have been using your script for a long time now and i enjoy it alot.

I was just wondering if you were ever thinking about making another script.. maybe a Cannon script?

Been wanting to get my pures range up with cannon but its so time consuming.

Any thoughts on it?
:)

US Marine

2012-03-27 20:50:00

From: il o y o il
use range guild, very good xp and a few scripts here


True. And its cheaper.

Only problem is the ban rate is still kind of high there.

duwell

2012-03-28 01:54:25

the fix for g that you posted works like a charm. i love it. old pc(g) was a little buggy, going off of the pyramid, but this one works amazingly.

Edit: it actually walks away from the plank, and so far thats the only problem that i've seen so far.

teamemb99

2012-03-28 13:45:58

this doesnt work for me, it just goes to a random spot and stands there the whole time.

i get this message "Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now."

Can some1 help me pls???
thanks

kirbyn

2012-03-28 16:39:52

Currently trying this, will post proggy when done.. so far it keeps running off the boats though all the way round the island near the general store, any ideas?

duwell

2012-03-28 18:31:26

i would of posted a proggy, but my girlfriend closed it, last i saw it was on 7 hours, with like 140 games played 90 won. something like that.

jordyn123

2012-03-28 18:42:00

it misses the pyramid goes off to the side and looks for monsters it doesnt hit 1 thing

elvenom

2012-03-28 22:07:12

Im getting this error "[Error] (35:5): Unknown identifier 'FindLamp' at line 34
Compiling failed." How do i fix?

P1nky

2012-03-29 01:08:16

Use this:

program PestControllerBETA;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController
//BETA Version

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = True;
QuickPrayer = True; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]
WhatBoat = 'N';{
Intermediate
Advance
Novice }





procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
// FindNormalRandoms;
wait(Random(100) + 20);
exit;
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 629;
dtmMainPoint.y := 164;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 125670;
dtmMainPoint.Tolerance := 21;

dtmSubPoints[0].x := 629;
dtmSubPoints[0].y := 164;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 125670;
dtmSubPoints[0].Tolerance := 21;

dtmSubPoints[1].x := 627;
dtmSubPoints[1].y := 156;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 3042439;
dtmSubPoints[1].Tolerance := 21;

dtmSubPoints[2].x := 635;
dtmSubPoints[2].y := 165;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3042439;
dtmSubPoints[2].Tolerance := 21;

dtmSubPoints[3].x := 630;
dtmSubPoints[3].y := 171;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3042439;
dtmSubPoints[3].Tolerance := 21;

dtmSubPoints[4].x := 622;
dtmSubPoints[4].y := 165;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3042439;
dtmSubPoints[4].Tolerance := 21;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
FindRandoms;
case WhatBoat of
'N','n','novice','Novice','I','inter','i','Intermediate','intermediate' :
begin
MakeCompass('S');
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
end;
'A','a','adv','advance','Advance' :
begin
MakeCompass('W');
Setangle(0);
{ KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down); }
end;
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983,3162776], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;

function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;


procedure FreeMem;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
end;

begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayer;
Inc(counter);
repeat
begin
FreeMem;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
spot2;
until (false);
end;
end.

I did quick fix on Advance and Novice, idk about Intermediate!

mtolympian

2012-03-29 03:49:23

Hey p1nky, been using your script for about 2 weeks now and it has done me wonders. Easily got me 3k+ commendation points. But a problem has occured…

My guy just walk to the top right of the pyramid, so i started using your updated [G] pestcontroller, now that problem is fixed, but another one has occured. After winning/losing a game, my guy goes like near the bank area and just sits there. what do i need to change to fix it? cheers bro.

kirbyn

2012-03-29 06:17:49


That happens, but also my guy randomly moves away from all the boats on the side of the island, getting really annoying now.. im not complaining it's a great script but yeah, annoying to babysit.


Just seen pinkys update, trying it now.
Tried it, still happening :S

P1nky

2012-03-29 08:37:34

From: mtolympian
Hey p1nky, been using your script for about 2 weeks now and it has done me wonders. Easily got me 3k+ commendation points. But a problem has occured…

My guy just walk to the top right of the pyramid, so i started using your updated [G] pestcontroller, now that problem is fixed, but another one has occured. After winning/losing a game, my guy goes like near the bank area and just sits there. what do i need to change to fix it? cheers bro.


From: kirbyn

That happens, but also my guy randomly moves away from all the boats on the side of the island, getting really annoying now.. im not complaining it's a great script but yeah, annoying to babysit.


Just seen pinkys update, trying it now.
Tried it, still happening :S


Both of yall please tell me what boat?

duwell

2012-03-29 09:36:11

i have the same problems with both of them. i've been using the novice boat, ill get a proggy later tonight, but right now im doin a little babysitting and making sure it doesnt do anything dumb

kirbyn

2012-03-29 10:00:18

It's happening in the advance boat, sometimes it keeps running to the intermediate then novice then off onto to the island too like:
advance x5>inter x1>novice x1> random place on island, it's totally random.

Zota

2012-03-29 13:53:06

Just to point out. It happens to all the boats it seems.

I'm on novice and it'll somehow get to the bank/inter boat/adva boat.
Maybe it's lag clicking away?

Luke

kirbyn

2012-03-29 14:04:10

I don't think it's lag, my laptop doesn't lag at all it moves the mouse there itself and does it, i suppose we'll just have to stick with a few games at a time with it. :)

elvenom

2012-03-29 14:18:54

From: P1nky
Yes, G is the newest;

Here is a fix for [G], will release it officially soon!


program PestControllerBETA;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController
//BETA Version

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = True;
QuickPrayer = True; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]
WhatBoat = 'N';{
Intermediate
Advance
Novice }





procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
// FindNormalRandoms;
wait(Random(100) + 20);
exit;
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 629;
dtmMainPoint.y := 164;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 125670;
dtmMainPoint.Tolerance := 21;

dtmSubPoints[0].x := 629;
dtmSubPoints[0].y := 164;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 125670;
dtmSubPoints[0].Tolerance := 21;

dtmSubPoints[1].x := 627;
dtmSubPoints[1].y := 156;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 3042439;
dtmSubPoints[1].Tolerance := 21;

dtmSubPoints[2].x := 635;
dtmSubPoints[2].y := 165;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3042439;
dtmSubPoints[2].Tolerance := 21;

dtmSubPoints[3].x := 630;
dtmSubPoints[3].y := 171;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3042439;
dtmSubPoints[3].Tolerance := 21;

dtmSubPoints[4].x := 622;
dtmSubPoints[4].y := 165;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3042439;
dtmSubPoints[4].Tolerance := 21;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
FindRandoms;
case WhatBoat of
'N','n','novice','Novice','I','inter','i','Intermediate','intermediate' :
begin
MakeCompass('S');
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
end;
'A','a','adv','advance','Advance' :
begin
MakeCompass('W');
Setangle(0);
{ KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down); }
end;
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983,3162776], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;

function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;


procedure FreeMem;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
end;

begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayer;
Inc(counter);
repeat
begin
FreeMem;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
spot2;
until (false);
end;
end.


Thanks alot dude for your work. Its working properly now.

kirbyn

2012-03-29 14:34:24

From: elvenom
Thanks alot dude for your work. Its working properly now.


that update still does the errors i mentioned above :/

Zota

2012-03-29 14:40:41

Kirbyn. Try Beta(B)

That one worked flawlessly for me on novice boat. You could try it on intermediate. It's only a fraction slower but I ran it for like 10 hours!

Luke

elvenom

2012-03-29 14:42:19

From: kirbyn
that update still does the errors i mentioned above :/


Actually im getting problems too. When its at the middle it goes down the stair and doesnt find any monster to click so it gets stuck. Also whenever its done doing a PC game it always clicks where the bank is.

elvenom

2012-03-29 14:44:50

Also is there a way we can choose the world the bot goes in?

kirbyn

2012-03-29 14:48:28

@Elvenom, just disable the bot after it loads up, choose world yourself and your sorted.
@Zota alright i'll try it tonight see how it goes, thank's.

bLOOOO

2012-03-29 14:51:18

Script works great one of the best fighting scripts their are, greatjob.

elvenom

2012-03-29 14:59:19

Kirbyn BETAB is working flawlessly if you put "procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
// FindNormalRandoms;
wait(Random(100) + 20);
exit;
end; "
In where you get the woodcutting error

elvenom

2012-03-29 15:02:39

But its kinda slow sometimes.

Zota

2012-03-29 16:49:04

From: elvenom
Also is there a way we can choose the world the bot goes in?


Yes.

You're going to need to edit the script a tiny bit (VERY simple. Copy paste job)
Follow this guide EXACTLY and you'll have no problems.

1. Open his script in SIMBA.
2. Press CTRL+F
3. Type: loginplayer;
4. Highlight loginplayer; (including the semi-colon)
5. Delete it. (Now you should have an empty line
6. Paste this piece of code into that gap:
    LoginPlayerToLob;
OpenWorldScreen;
SelectWorld(53);
LoginPlayer;

Exactly like that. Job done. Save the file (CTRL+S) and run it.

Cheers,
Luke

kirbyn

2012-03-29 16:51:21

From: elvenom
Kirbyn BETAB is working flawlessly if you put "procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
// FindNormalRandoms;
wait(Random(100) + 20);
exit;
end; "
In where you get the woodcutting error

I don't get woodcutting errors, my guy runs onto the island away from all the boats as i posted in screenshot, varies on which part of the island.

elvenom

2012-03-29 17:14:27

From: kirbyn
I don't get woodcutting errors, my guy runs onto the island away from all the boats as i posted in screenshot, varies on which part of the island.


Have you tried using BETAB?

kirbyn

2012-03-29 17:18:31

No, i'll be using it overnight currently trying out another script.

bobo188

2012-03-29 17:38:56

idk if i have to set something special, but for me the bot only stays in the middle and attacks the monsters there o: otherwise great bot tyvm :D

kirbyn

2012-03-29 17:51:38

From: bobo188
idk if i have to set something special, but for me the bot only stays in the middle and attacks the monsters there o: otherwise great bot tyvm :D


That's what the bot does. :)

duwell

2012-03-29 22:10:45

i've been using the updated G, novice boat, and it runs twords the bank, and sometimes if the camera angle isnt low enough, it doesnt click on the plank. most of the time it does switch the angle and it'll get the plank eventually, but sometimes i catch it not doing anything.

Craimforce

2012-03-30 13:33:26

I think this is the wrong thread for this.
This should be in Minigames section.

Gestapo

2012-03-30 13:36:40

this is great script <3

kirbyn

2012-03-30 16:49:48

From: elvenom
Kirbyn BETAB is working flawlessly if you put "procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
// FindNormalRandoms;
wait(Random(100) + 20);
exit;
end; "
In where you get the woodcutting error


I didn't have that error but used this anyway.. so far its been running 2 hours flawless… im almost done with pc now though.. going to range/armoured zombies soon. thank's for the tip bud. :)

P1nky

2012-03-30 17:56:34

From: Zota
Yes.

You're going to need to edit the script a tiny bit (VERY simple. Copy paste job)
Follow this guide EXACTLY and you'll have no problems.

1. Open his script in SIMBA.
2. Press CTRL+F
3. Type: loginplayer;
4. Highlight loginplayer; (including the semi-colon)
5. Delete it. (Now you should have an empty line
6. Paste this piece of code into that gap:
    LoginPlayerToLob;
OpenWorldScreen;
SelectWorld(53);
LoginPlayer;

Exactly like that. Job done. Save the file (CTRL+S) and run it.

Cheers,
Luke


Lol, forgot about Selectworld! thanks, will add in next update! (I had to make one myself for choosing quick world when found in login screen lol, but this will work just fine).

begginer

2012-03-30 17:57:50

(23,935 views, 551 replies)
I think well done with it. BTW got all versions saved on my pc

bLOOOO

2012-03-30 18:37:09

The update for [G] doesn't work to great just stands around near the Magic shop.

The original [G] works great for me, been using for a few weeks on and off great script and thank you very much.

TemporaryUsername

2012-03-31 18:18:26

When i run it it goes to the southwest tower thingy. Can you fix this? I just sits there and moves camera around and clicks on my character?

Zota

2012-04-01 02:47:29

P1nky, any updates coming soon? all versions are pretty buggy nowaday. Can't run it for more than an hour without it loggingout.

Main problems:
finishes a game, stands at plank then just logs out.
Getting lost.
Walking away from middle and not attacking.

Cheers,
Luke

Imanoobbot

2012-04-01 04:43:41

Hey, first off i got interested in your scripts. They seems to be very nice. Is it okey for you, when i look into your scripts and learn from them? So putting procedures etc together. See how the lines are working. Don´t worry i am not leeching. Not playing Runescape anymore, I am just interested in Scripting.
I think it is always better to ask.

-Imanoobbot

wayiyi

2012-04-01 04:50:49

it worked 6 hours and played 121 games but points was only 74 -.-

Zota

2012-04-01 05:23:40

From: wayiyi
it worked 6 hours and played 121 games but points was only 74 -.-


Which version of the script are you using? Post the script here. I've never had problems with losing games..

Luke

P1nky

2012-04-01 05:25:51

From: wayiyi
it worked 6 hours and played 121 games but points was only 74 -.-


Post your stats, mainly it's due to you not getting the 500+ exp per game.

boyb69

2012-04-01 12:59:11

working great!! you made my day!! ( got hacked yesterday by epicbot but only minor loses 25m) and now i have got back my voids!!!

Zota

2012-04-01 14:01:22

I really don't understand how it's working for 50% but bugging out for the other 50% of users.

Luke

P1nky

2012-04-01 14:04:33

From: Zota
I really don't understand how it's working for 50% but bugging out for the other 50% of users.

Luke

Your graphic settings is it set to like the lowest?

Zota

2012-04-01 14:16:44

Of course, as always.

It's not the graphics settings.

Here are the problems:

When leaving Pestcontrol game, it might still be clicking a mob. This means when it arrives at the dock, it missclicks and walks away from gangplank.
Fix: Make it check that it's position is correct - otherwise walk back to plank.

When in pest control game it sometimes walks away from center and doesn't walk back.
Fix: same style as above.

Sometimes doesn't get enough points. I'm 84 str so it isn't that. Attacking and colour just needs to be sped up somehow.

Cheers,
Luke

feyaerts

2012-04-01 17:28:08

From: Zota
Of course, as always.

It's not the graphics settings.

Here are the problems:

When leaving Pestcontrol game, it might still be clicking a mob. This means when it arrives at the dock, it missclicks and walks away from gangplank.
Fix: Make it check that it's position is correct - otherwise walk back to plank.

When in pest control game it sometimes walks away from center and doesn't walk back.
Fix: same style as above.

Sometimes doesn't get enough points. I'm 84 str so it isn't that. Attacking and colour just needs to be sped up somehow.

Cheers,
Luke

I think there are ALOT of people using this bot, maybe that' why you don't get 500 because you could stand there with like 8 people :S

P1nky

2012-04-01 17:29:25

Temp Fix:

program PestControllerBETA;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController
//BETA Version

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = True;
QuickPrayer = True; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]
WhatBoat = 'N';{
Intermediate
Advance
Novice }





procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
// FindNormalRandoms;
wait(Random(100) + 20);
exit;
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 629;
dtmMainPoint.y := 164;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 125670;
dtmMainPoint.Tolerance := 21;

dtmSubPoints[0].x := 629;
dtmSubPoints[0].y := 164;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 125670;
dtmSubPoints[0].Tolerance := 21;

dtmSubPoints[1].x := 627;
dtmSubPoints[1].y := 156;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 3042439;
dtmSubPoints[1].Tolerance := 21;

dtmSubPoints[2].x := 635;
dtmSubPoints[2].y := 165;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3042439;
dtmSubPoints[2].Tolerance := 21;

dtmSubPoints[3].x := 630;
dtmSubPoints[3].y := 171;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3042439;
dtmSubPoints[3].Tolerance := 21;

dtmSubPoints[4].x := 622;
dtmSubPoints[4].y := 165;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3042439;
dtmSubPoints[4].Tolerance := 21;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
FindRandoms;
case WhatBoat of
'N','n','novice','Novice','I','inter','i','Intermediate','intermediate' :
begin
MakeCompass('S');
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
end;
'A','a','adv','advance','Advance' :
begin
MakeCompass('W');
Setangle(0);
{ KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down); }
end;
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983,3162776], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;

function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;


procedure FreeMem;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
end;

begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayer;
Inc(counter);
repeat
begin
FreeMem;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
until (false);
end;
end.

Thank You.

Onemind

2012-04-01 17:35:13

Hi P1nky,

been trying to contact you through PM, but no response so far.
Can you check your inbox, please?

P1nky

2012-04-01 20:02:14

Proggie Test:
||===========================||
|| P1nkys PestController ||
||===========================||
|| April 1st, 2012 ||
||===========================||
Worked For 5 Hours, 45 Minutes and 2 Seconds
Games Played 116
||===========================||

From: Onemind
Hi P1nky,

been trying to contact you through PM, but no response so far.
Can you check your inbox, please?


I don't respond to most PMs due to my inbox keeps on getting filled, please post the question.

-Thanks

melee

2012-04-02 17:10:45

Script is amazing thankyou so much!!! was able to get 500 points flawlessly yesterday! Today with F and others it runs to below tower and stands there clicking. I can take a vid of it and show

d0pe b0i

2012-04-02 19:29:26

Running it now. Will post proggy later. Thanks P1nky

bobo188

2012-04-02 19:49:32

script is kinda broken atm, always goes into the right corner near the guard tower instead of the middle plateau. and no its not because im doing anything wrong, like auto retalitate on or anything, the script will just go to the tower straight from the beginning :s

d0pe b0i

2012-04-02 22:44:39

From: bobo188
script is kinda broken atm, always goes into the right corner near the guard tower instead of the middle plateau. and no its not because im doing anything wrong, like auto retalitate on or anything, the script will just go to the tower straight from the beginning :s



its working just fine, brotein.

Regicidal

2012-04-03 02:07:09

This just got me Elite Void and all helms! Thanks!

P1nky

2012-04-03 02:12:42

[F] is the one giving problems?
within 2-3 days I have received 1000 points with [F]?

Sim Kai Long

2012-04-03 08:49:18


Still running currently. Nice script P1nky, really love it. :)

timed002

2012-04-03 12:37:57

Curious as to how the xp compares to, say, Laake's Ghouler? Better or worse in the long run?

pigggy

2012-04-03 16:24:28

From: timed002
Curious as to how the xp compares to, say, Laake's Ghouler? Better or worse in the long run?


laakes ghouler is oblivously more xp, unless u are trying to get void..

Cerylin

2012-04-03 17:33:32

how long about will i have to use this to get full void (assuming i start from 0 points)

P1nky

2012-04-03 17:52:50

From: Cerylin
how long about will i have to use this to get full void (assuming i start from 0 points)


3 days?

Cerylin

2012-04-03 17:59:05

From: P1nky
3 days?


If I was botting it continuously for those 3 days?

P1nky

2012-04-03 18:10:52

From: Cerylin
If I was botting it continuously for those 3 days?


Use the scriptmanager, you should be good within a day or 2. Check it out :D

BrothaLynchHung

2012-04-03 20:26:25

Version F Always runs to the top right

kinkose

2012-04-03 23:59:36

I have version G and it was working really well for the past couple days (going to the middle and killing shifters and stuff). i used it today and it just runs to random places… I keep getting no points and I'm not tryin to complain, but its getting really annoying. I thought I would just redownload version G, but when I came here to do it, it's not here…? Are you fixing things?

kunzy

2012-04-04 00:11:31

pinky i think your script has taken over pest control no joke :o

Nemesis3X

2012-04-04 00:25:41

From: kunzy
pinky i think your script has taken over pest control no joke :o


After testing the Script, it is easier to guess who are real player and who aren't :-P

Jagex Mod

2012-04-04 00:55:02

I'm using that temp fix you uploaded on page 23.

I must say, brilliant script. Only one suggestion:

Sometimes when a defiler teleports; your character goes chasing after it and it doesn't go back to the void knight. It would be nice if it would click back there and continue on fighting.

Half of the time that's what prevented me from getting enough zeal.

||===========================||
|| P1nkys PestController ||
||===========================||
|| April 4th, 2012 ||
||===========================||
Worked For 5 Hours, 24 Minutes and 11 Seconds
Games Played 109
||===========================||

V3n

2012-04-04 01:50:23

||===========================||
|| P1nkys PestController ||
||===========================||
|| April 4th, 2012 ||
||===========================||
Worked For 55 Minutes and 32 Seconds
Games Played 19
||===========================||

Good work so far. Would love to see you to continue improving in the future. Can definitely notice other PC'ers using it :)

P1nky

2012-04-04 10:43:00

From: kinkose
I have version G and it was working really well for the past couple days (going to the middle and killing shifters and stuff). i used it today and it just runs to random places… I keep getting no points and I'm not tryin to complain, but its getting really annoying. I thought I would just redownload version G, but when I came here to do it, it's not here…? Are you fixing things?


Use [F] mate.

From: BrothaLynchHung
Version F Always runs to the top right


I'll test/update tonight.

From: kunzy
pinky i think your script has taken over pest control no joke :o

Next update will add randomness in the walking :)

BrothaLynchHung

2012-04-04 11:40:55

buggy but still works. its a good script! got me ranger helm and top so far! bottom and gloves to go

prostaker

2012-04-05 19:56:32

It got me 95 prayer

Thanx for that.

Your friend Chuck :norris:

burni

2012-04-05 21:16:55

Keep getting there error below, not sure what it means. Wont get onto the gangplank (vex in the way). This is on version F. Ive used this script before, so ill dig up whatever version i was using and try it.



Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.

bLOOOO

2012-04-06 21:17:02

Bot has been and is working great keep up the work!

P1nky

2012-04-07 04:11:43

Glad to announce that, "P1nky's PestController has total running time of 805 days"

Thank You Mates, will keep managing this script :) Keep posting bugs/proggies!

justiceouest

2012-04-07 13:34:08

i ear that's your are maybe doing a sw bot ? sound good bro

HamzaAbbasi

2012-04-07 21:33:04

Getting this infont of the Novice lander.

Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.

Using F but what's the difference?

melee

2012-04-08 11:39:02

Thankyou so much! 90-95 Strength so far and its only been a week or so.

HamzaAbbasi

2012-04-08 16:08:20

Dude PLEASE HELP!!!

When I start (F) infront of the Novice boat (not in it infront of the squire) and it justs clicks randomly to the sea.

young richard

2012-04-08 19:16:25

So this runs fine but then doesnt fight any monsters in pc? What do i fix? I have runescape settings set correctly and everything?

EDIT: So it runs to the middle at first and if it doesnt find a shifter within 5 seconds it just runs through one of the fences and then never clicks any other monster or ever tries to run again…Not sure what to do, why would I be the only one having this problem?

bLOOOO

2012-04-08 22:39:39

From: young richard
So this runs fine but then doesnt fight any monsters in pc? What do i fix? I have runescape settings set correctly and everything?

EDIT: So it runs to the middle at first and if it doesnt find a shifter within 5 seconds it just runs through one of the fences and then never clicks any other monster or ever tries to run again…Not sure what to do, why would I be the only one having this problem?


Restart the script happens to me a few times but when I restart the script it works fine again.

xGatmann

2012-04-08 23:23:27

[Hint] C:\Simba\Includes\SRL/SRL/core/mapwalk.simba(1353:3): Variable 'BOX' never used at line 1352
[Error] (38:5): Unknown identifier 'FindLamp' at line 37
Compiling failed.

Help please?

xGatmann

2012-04-08 23:24:56

From: melee
Thankyou so much! 90-95 Strength so far and its only been a week or so.


What version are you using?

P1nky

2012-04-09 01:17:34

From: xGatmann
What version are you using?


Is [F] giving you problems?

siuman101

2012-04-09 07:07:17

The [F] always misclick the monster. Also it has a slow reaction. In addition, when it is attacking one npc, i don't know why it will try to attack the other, why don't let it kill that monster first without any click, cause it always mis-click, so i think it should reduce the frequency of clicking. I just found out that it is not mis-click, after hitting the swifter once, it will click "walk here". probably want the bot to stay in the area.

Edit: sometimes the mouse will hover and without doing anything.

young richard

2012-04-09 12:49:25

^ this

Moni

2012-04-09 14:08:53

My bot runs and its very slow and when it dies it doesnt go back and fight

xGatmann

2012-04-09 17:23:55

From: P1nky
Is [F] giving you problems?


I tried all of them and i still can't run any of the scripts :/ and yes i believe its F

xGatmann

2012-04-09 17:25:56

Which is the best version to use P1nky? ill try it out and give you the problems if i cant start it lol

siuman101

2012-04-09 18:50:30

From: xGatmann
Which is the best version to use P1nky? ill try it out and give you the problems if i cant start it lol

The writer has highly recommended to use version[F], and the more better one will be release later.

MarcoCampo

2012-04-10 00:54:17

I am currently using the F version, and it's working. Except it only runs to the middle where the knight is, and attacks the creatures there. How do i get it to run to the gates and attack, it just stands at the gate and does nothing. I'm knew to this.

Also what is the best world to do this on.. I can't find a world with people on it!

also getting this error… Is it because I'm starting IN the boat instead of beside it?
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.

P1nky

2012-04-10 03:50:25

From: siuman101
The [F] always misclick the monster. Also it has a slow reaction. In addition, when it is attacking one npc, i don't know why it will try to attack the other, why don't let it kill that monster first without any click, cause it always mis-click, so i think it should reduce the frequency of clicking. I just found out that it is not mis-click, after hitting the swifter once, it will click "walk here". probably want the bot to stay in the area.

Edit: sometimes the mouse will hover and without doing anything.

Turn off 'Fast500', and I will redo a whole function for finding/attacking the Pests on next Update. Also I made it fast cause the games are really fast in novice, and alot of competition due to so many others using this script.

From: Moni
My bot runs and its very slow and when it dies it doesnt go back and fight

I never died in a PC game so I was never able to make a procedure for it :/ wear better gear.

From: xGatmann
I tried all of them and i still can't run any of the scripts :/ and yes i believe its F

I will test it out sometime this week and make a update, sorry about the inconvenience.

From: MarcoCampo
I am currently using the F version, and it's working. Except it only runs to the middle where the knight is, and attacks the creatures there. How do i get it to run to the gates and attack, it just stands at the gate and does nothing. I'm knew to this.

Also what is the best world to do this on.. I can't find a world with people on it!

also getting this error… Is it because I'm starting IN the boat instead of beside it?


World 53 is made for PestControl and best for me and many other users. And this script is made for going to center and killing pests only, check out the vid Mate.

-Cheers and thanks for the feedbacks!

nathan lad

2012-04-10 05:35:05

great script was workin pefrectly for like 700 zeals tuther day using version F but now it misclicks when running to the void knight at the centre and instead goes a bit infront of it too the right where it cant see the shifters that spawn and hence forth doesnt gettin the required zeal

tvjj

2012-04-10 09:57:21

i got this to work i had to take some of the parts from version [F] and added them to version [D] have been running it for a couple of days now.

just ran it here is proggy.

||===========================||
|| P1nkys PestController ||
||===========================||
|| April 10th, 2012 ||
||===========================||
Worked For 6 Hours, 1 Minutes and 11 Seconds
Games Played 125

imtoxic

2012-04-10 10:03:37

not working for me somthing with line37

G00die

2012-04-10 17:25:27

From: P1nky
Is [F] giving you problems?


for me is [F] working perfectly if I dont minimize to much . but thats logic.

So thumbs up for you :) ive did like 3-4k tickets with runs of 5-6h a prog.

US Marine

2012-04-10 20:10:57

I'v gotten from 70-90 strength on one account, and 82-95 strength on another!

Working perfectly, update your simba guys and constantly update msi and whatnot. When my script starts messing up I restart my simba, check everything for an update and start over. Sometimes you just gotta give the script a boost by already being in the boat, or re-correcting it if it runs somewhere random.

I'v had 1 or 2 problems with this script and i'v been using it for a good amount of time.

Thanks for keeping this script awesome, looking forward to updates possibly?

young richard

2012-04-11 12:46:51

The major problem with this is if it attack a shifter that teleports away, which is only what ive seen it attack, it never goes back to the middle, therefore once its away from the middle, automatic waste of a game and time.

P1nky

2012-04-11 16:10:35

Quick Fix:

program PestControllerBETA;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController
//BETA Version

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = True;
QuickPrayer = True; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]
WhatBoat = 'N';{
Intermediate
Advance
Novice }





procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
// FindNormalRandoms;
wait(Random(100) + 20);
exit;
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 629;
dtmMainPoint.y := 164;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 125670;
dtmMainPoint.Tolerance := 21;

dtmSubPoints[0].x := 629;
dtmSubPoints[0].y := 164;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 125670;
dtmSubPoints[0].Tolerance := 21;

dtmSubPoints[1].x := 627;
dtmSubPoints[1].y := 156;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 3042439;
dtmSubPoints[1].Tolerance := 21;

dtmSubPoints[2].x := 635;
dtmSubPoints[2].y := 165;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3042439;
dtmSubPoints[2].Tolerance := 21;

dtmSubPoints[3].x := 630;
dtmSubPoints[3].y := 171;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3042439;
dtmSubPoints[3].Tolerance := 21;

dtmSubPoints[4].x := 622;
dtmSubPoints[4].y := 165;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3042439;
dtmSubPoints[4].Tolerance := 21;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
wait(1000);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
FindRandoms;
case WhatBoat of
'N','n','novice','Novice','I','inter','i','Intermediate','intermediate' :
begin
MakeCompass('S');
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
wait(500);
KeyDown(VK_left);
wait(Random(100) + 500);
KeyUp(VK_left);
end;
'A','a','adv','advance','Advance' :
begin
MakeCompass('W');
Setangle(0);
{ KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down); }
end;
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983,3162776], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;

function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;


procedure FreeMem;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
end;

begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayerToLob;
OpenWorldScreen;
SelectWorld(53);
LoginPlayer;
Inc(counter);
repeat

begin
FreeMem;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
until (false);
end;
end.

Imanoobbot

2012-04-11 16:24:49

From: P1nky
Quick Fix:

program PestControllerBETA;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController
//BETA Version

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = True;
QuickPrayer = True; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]
WhatBoat = 'N';{
Intermediate
Advance
Novice }





procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
// FindNormalRandoms;
wait(Random(100) + 20);
exit;
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 629;
dtmMainPoint.y := 164;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 125670;
dtmMainPoint.Tolerance := 21;

dtmSubPoints[0].x := 629;
dtmSubPoints[0].y := 164;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 125670;
dtmSubPoints[0].Tolerance := 21;

dtmSubPoints[1].x := 627;
dtmSubPoints[1].y := 156;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 3042439;
dtmSubPoints[1].Tolerance := 21;

dtmSubPoints[2].x := 635;
dtmSubPoints[2].y := 165;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3042439;
dtmSubPoints[2].Tolerance := 21;

dtmSubPoints[3].x := 630;
dtmSubPoints[3].y := 171;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3042439;
dtmSubPoints[3].Tolerance := 21;

dtmSubPoints[4].x := 622;
dtmSubPoints[4].y := 165;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3042439;
dtmSubPoints[4].Tolerance := 21;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
wait(1000);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
FindRandoms;
case WhatBoat of
'N','n','novice','Novice','I','inter','i','Intermediate','intermediate' :
begin
MakeCompass('S');
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
wait(500);
KeyDown(VK_left);
wait(Random(100) + 500);
KeyUp(VK_left);
end;
'A','a','adv','advance','Advance' :
begin
MakeCompass('W');
Setangle(0);
{ KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down); }
end;
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983,3162776], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;

function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;


procedure FreeMem;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
end;

begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
SetupSRLStats(654, 'Anonymous', 'anon1337')
else
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayerToLob;
OpenWorldScreen;
SelectWorld(53);
LoginPlayer;
Inc(counter);
repeat

begin
FreeMem;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
until (false);
end;
end.


Seems to be very very nice! Will try this out tomorrow i think. Great job!

melee

2012-04-11 18:17:43

Version [F] has been working well for me My account never dies and gets 500 hits very quickly.

"The only provlem is it tends to follow shifters that move away from the center and gets stuck but overall I've probably only lost 2 games out of every 100."

I turned off quickprayer and special attacks (that might help someone else)

xGatmann

2012-04-11 18:31:23

Im getting a "MSVCR100.dll bad image" or a not valid one or something its an error message and wont let me launch the bot….can anyone help me please? :/ pm me please

P1nky

2012-04-11 18:32:11

From: xGatmann
Im getting a "MSVCR100.dll bad image" or a not valid one or something its an error message and wont let me launch the bot….can anyone help me please? :/ pm me please


Have you downloaded SRL?

siuman101

2012-04-11 19:03:23

Once a game has done, the bot should get into the boat immediately but not trying to talk. I have missed many game because of this.
secondly, i think the bot should keep on staying beside the void knight but not the fence, because no monster will be appear at the fence, and the bot will just sit there :P
thirdly, when the bot trying to go into the bot, it always mis-click, and sometimes it even clicking on the sky.
fourthly, the mouse always move randomly but it seems hardly detect the monster.
fifthly, which is the same problem, once the bot is attacking the NPC, the mouse should not click anything including the NPC.
Hope my report can make your bot develop in a more better way :P

xGatmann

2012-04-11 19:15:40

From: P1nky
Have you downloaded SRL?


I got it working lol i guess something was wrong with my computer it took me 5 hrs lol to fix it but its good now :) thanks p1nky sorry for posting too much..i tried [F] and like how everyone is saying it misclicks lol thats pretty much it….does anyone know how much xp/hr this gives?

young richard

2012-04-11 21:00:34

Is "DeclarePlayerz" supposed to be with a z in the code you just posted? Also, why does it have to click through the chat? To read game text? the first two games i played with this quick fix code you recently posted i didnt zeal

melee

2012-04-11 22:34:40

From: melee
Version [F] has been working well for me My account never dies and gets 500 hits very quickly.

"The only provlem is it tends to follow shifters that move away from the center and gets stuck but overall I've probably only lost 2 games out of every 100."

I turned off quickprayer and special attacks (that might help someone else)


Hehehehe Your script is so popular there is like 10 people using it in each game I'm in and hard to get 500 hits because we all fight over a few shifters lol. Amazing script though! A great way to improve it is to fight other spots besides center because it is very crowded now.

Moni

2012-04-12 04:18:46

My bot keeps moving north east corner-.-……….. Just set it 2 automatically go 2 center and not to straggle away…….

Elitezer0

2012-04-12 05:24:51

Working good. Dunno why people are complaining it's better then doing it legit lolz.

Windz

2012-04-12 07:53:03

Epic script!
One minor thing - when it gets to the island, it clicks the NPC message (continue) then it spins the camera for like 5 seconds then it goes. You should make it so that it just runs to the middle and attacks.
You should make it attack portals too.

Thanks for the script!

P1nky

2012-04-12 12:33:54

||===========================||
|| P1nkys PestController ||
||===========================||
|| April 11th, 2012 ||
||===========================||
Worked For 5 Hours, 44 Minutes and 48 Seconds
Games Played 113
||===========================||


Updated to [H]! Make sure to post proggies! More attack spots will be added soon!

-Cheers

Skywalk

2012-04-12 16:23:00

After a few games it is getting stuck here at the gates
url]http://imgur.com/kb81W
at the gates

Version H
|====================================|
| ~ SRL ~ |
| Randoms Report |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
| |
| |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
|====================================|
||===========================||
|| P1nkys PestController ||
||===========================||
|| April 12th, 2012 ||
||===========================||
Worked For 17 Minutes and 58 Seconds
Games Played 7
||===========================||

nice proggy for the start
I will post a new one tommorow I will leave it running over night

Skywalk,

qeeked

2012-04-12 17:24:21

Just tried (H) out it just kept hovering over the plank and then keeps walking to intermediate boat, ill keep playing with it.

P1nky

2012-04-12 18:46:07

From: qeeked
Just tried (H) out it just kept hovering over the plank and then keeps walking to intermediate boat, ill keep playing with it.


I got a fix for this, will paste in a bit.

DDEVIL6

2012-04-12 19:46:10

On H it logged out in the middle of the seventh game, it also had "warning! you passed wrong values to a finder function ys > ye <30,29)"?

Windz

2012-04-12 21:21:26

Here's a proggy using version F.
||===========================||
|| P1nkys PestController ||
||===========================||
|| April 12th, 2012 ||
||===========================||
Worked For 3 Hours, 37 Minutes and 7 Seconds
Games Played 80
||===========================||

Works great! Also another thing.. it gets to the middle and then when an NPC appears, it walks off the middle then waits 5 seconds then goes back up onto the middle.

skillkiller1

2012-04-12 22:19:47

great job man! after like 23 games on version H. i got this message though:( just keeps clicking on the water beyond the boat. other than that great job

Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.

orca1337

2012-04-12 23:11:26

When i reach 8 games played. The npc will ask me to exchange my commendation on the 3rd dialog when it comes up, the mouse keep moving in a pattern not stop like a triangle pattern.

Untill i disable SMART and i went into the boat and enable it. It's working again. Could you script it that it will click the small bridge to the boat instead of pressing next till the messege dialog is gone then you click on the bridge. It will make it miss the group that you're in.

I'm not complaining dude, i love your script it's free plus it's working. Kudos to you.

quazzymodem

2012-04-12 23:41:46

Will test this out, I have been using a modified version of F and it was pretty solid until the other day when it broke :(

Loving the script though pinky, expect a proggy soon

MarcoCampo

2012-04-13 02:55:23

been running [F] for a while andi t was working great, then it started to mouse over the plank and just move up and down it, [H] is doing this as well.

Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.
Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.


just not stop spamming this..

siuman101

2012-04-13 06:31:14

From: orca1337
When i reach 8 games played. The npc will ask me to exchange my commendation on the 3rd dialog when it comes up, the mouse keep moving in a pattern not stop like a triangle pattern.

Untill i disable SMART and i went into the boat and enable it. It's working again. Could you script it that it will click the small bridge to the boat instead of pressing next till the messege dialog is gone then you click on the bridge. It will make it miss the group that you're in.

I'm not complaining dude, i love your script it's free plus it's working. Kudos to you.

I think the same thing as you do. You should really let the bot to click on the bridge after finished the game. If not it will miss the group.

Elitezer0

2012-04-13 16:41:20

It's started walking south of the platform and standing there every game:0 I don't know why It was working fine yesterday:/

illester

2012-04-13 17:51:31

Its always moves to another boat. I ran it for 12 hours a got 108 commendations.

P1nky

2012-04-13 18:53:12

FIX:

program PestController;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = True;
QuickPrayer = True; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]
WhatBoat = 'N';{
Intermediate
Advance
Novice }





procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
// FindNormalRandoms;
wait(Random(100) + 20);
exit;
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 629;
dtmMainPoint.y := 164;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 125670;
dtmMainPoint.Tolerance := 21;

dtmSubPoints[0].x := 629;
dtmSubPoints[0].y := 164;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 125670;
dtmSubPoints[0].Tolerance := 21;

dtmSubPoints[1].x := 627;
dtmSubPoints[1].y := 156;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 3042439;
dtmSubPoints[1].Tolerance := 21;

dtmSubPoints[2].x := 635;
dtmSubPoints[2].y := 165;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3042439;
dtmSubPoints[2].Tolerance := 21;

dtmSubPoints[3].x := 630;
dtmSubPoints[3].y := 171;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3042439;
dtmSubPoints[3].Tolerance := 21;

dtmSubPoints[4].x := 622;
dtmSubPoints[4].y := 165;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3042439;
dtmSubPoints[4].Tolerance := 21;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
wait(1000);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
FindRandoms;
case WhatBoat of
'N','n','novice','Novice','I','inter','i','Intermediate','intermediate' :
begin
MakeCompass('S');
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
wait(500);
KeyDown(VK_left);
wait(Random(50) + 50);
KeyUp(VK_left);
end;
'A','a','adv','advance','Advance' :
begin
MakeCompass('W');
Setangle(0);
{ KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down); }
end;
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983,3162776], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;


function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;


procedure FreeMem;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
end;

begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
{ SetupSRLStats(654, 'Anonymous', 'anon1337')
else }
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayerToLob;
OpenWorldScreen;
SelectWorld(53);
LoginPlayer;
Inc(counter);
repeat

begin
FreeMem;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
until (false);
end;
end.



sarmetto

2012-04-13 18:55:24

From: P1nky
FIX:

program PestController;
{$DEFINE SMART}
{$i srl\srl.simba}
{.include SRL/SRL/Skill/Fighting.simba}

//P1nky's PestController

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
SpecialAttacks = True;
QuickPrayer = True; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]
WhatBoat = 'N';{
Intermediate
Advance
Novice }





procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; //Your Runescape username
Players[0].Pass := ''; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

var
Reward, games, win, lost, Rp, Pp, Yp, yellow, white, LeftGate, DTMSPOT2, DTMSPOT3, DTMSPOT, x, y, counter: integer;

procedure FindRandoms;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
// FindNormalRandoms;
wait(Random(100) + 20);
exit;
end;

function Step1: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 933;
dtmMainPoint.y := 115;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1452869;
dtmMainPoint.Tolerance := 20;
dtmSubPoints[0].x := 933;
dtmSubPoints[0].y := 115;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1452869;
dtmSubPoints[0].Tolerance := 20;
dtmSubPoints[1].x := 933;
dtmSubPoints[1].y := 121;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 4357778;
dtmSubPoints[1].Tolerance := 20;
dtmSubPoints[2].x := 923;
dtmSubPoints[2].y := 114;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2844546;
dtmSubPoints[2].Tolerance := 20;
dtmSubPoints[3].x := 931;
dtmSubPoints[3].y := 104;
dtmSubPoints[3].AreaSize := 3;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2513523;
dtmSubPoints[3].Tolerance := 20;
dtmSubPoints[4].x := 941;
dtmSubPoints[4].y := 114;
dtmSubPoints[4].AreaSize := 3;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 5218735;
dtmSubPoints[4].Tolerance := 20;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function step2: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 629;
dtmMainPoint.y := 164;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 125670;
dtmMainPoint.Tolerance := 21;

dtmSubPoints[0].x := 629;
dtmSubPoints[0].y := 164;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 125670;
dtmSubPoints[0].Tolerance := 21;

dtmSubPoints[1].x := 627;
dtmSubPoints[1].y := 156;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 3042439;
dtmSubPoints[1].Tolerance := 21;

dtmSubPoints[2].x := 635;
dtmSubPoints[2].y := 165;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3042439;
dtmSubPoints[2].Tolerance := 21;

dtmSubPoints[3].x := 630;
dtmSubPoints[3].y := 171;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 3042439;
dtmSubPoints[3].Tolerance := 21;

dtmSubPoints[4].x := 622;
dtmSubPoints[4].y := 165;
dtmSubPoints[4].AreaSize := 1;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 3042439;
dtmSubPoints[4].Tolerance := 21;

TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

function Step3: Integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: array [0..4] of TDTMPointDef;
TempTDTM: TDTM;
begin
dtmMainPoint.x := 741;
dtmMainPoint.y := 175;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 863541;
dtmMainPoint.Tolerance := 15;
dtmSubPoints[0].x := 741;
dtmSubPoints[0].y := 175;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 863541;
dtmSubPoints[0].Tolerance := 15;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 173;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 16249839;
dtmSubPoints[1].Tolerance := 15;
dtmSubPoints[2].x := 744;
dtmSubPoints[2].y := 169;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 2976616;
dtmSubPoints[2].Tolerance := 15;
dtmSubPoints[3].x := 737;
dtmSubPoints[3].y := 169;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 2841950;
dtmSubPoints[3].Tolerance := 15;
dtmSubPoints[4].x := 734;
dtmSubPoints[4].y := 173;
dtmSubPoints[4].AreaSize := 0;
dtmSubPoints[4].AreaShape := 0;
dtmSubPoints[4].Color := 16249839;
dtmSubPoints[4].Tolerance := 15;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;

procedure ReportScreen(TP: TStringArray; Placement: TPoint; Colour: integer);
var
mx, my, Pic, I, B, H, TPH, Numb: Integer;
TTP: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
GetClientDimensions(mx, my);
Pic := BitmapFromString(mx, my, '');
TPH := High(TP);
for I := 0 to TPH do
begin
TTP := LoadTextTPA(TP[i], SmallChars, H);
for B := 0 to High(TTP) do
begin
Numb := ((I + 1) * 13);
FastSetPixel(Pic, TTP[b].x + 1, TTP[b].y + Numb + 1, 8388736);
FastSetPixel(Pic, TTP[b].x, TTP[b].y + Numb, Colour);
end;
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(Pic, Canvas, Placement.x, Placement.y);
FreeBitmap(Pic);
end;

procedure ReportSmart;
begin
ReportScreen(['P1nkys PestController', '', 'Worked For ' + TimeRunning, '', 'Games Played ' + IntToStr(Games)], Point(350, 223), 255);
end;

procedure SPOT1;
begin
Status('Spot 1');
SetRun(True);
MakeCompass('S');
DTMSPOT := Step1;
if DTMRotated(DTMSPOT, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
FFlag(0);
wait(Random(1000) + 500);
end;

procedure SPOT2;
begin
Status('Spot 2');
MakeCompass('S');
DTMSPOT2 := Step2;
if DTMRotated(DTMSPOT2, X, Y, MMX1, MMY1, MMX2, MMY2) then
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, True);
wait(1000);
FFlag(0);
wait(1300);
end;

function AwayFromVoid: boolean;
var
C: Integer;
begin
C := 42342;
if not (C > 4) then
begin
result := false;
exit;
TerminateScript;
end
else
result := true;
Spot1;
end;

function Clan: boolean;
var
X, Y: Integer;
begin
Result := (FindColor(X, Y, 3226804, 460, 30, 461, 29));
end;

function RewardBox: Boolean;
begin
if (Clan) then
begin
Mouse(475, 29, 1, 1, True);
end;
if FindColorTolerance(x, y, 986895, 134, 96, 435, 334, 1) then
begin
Result := True;
Mouse(392, 60, 0, 0, true);
Reward := Reward + 1;
end
else
Result := False;
end;

procedure WinOrLose;
begin
Status('Checking if Win Game Or Lose');
RewardBox;
MakeCompass('S');
ReportSmart;
if FindNPCChatText('Congratulations!', True) then
begin
win := win + 1;
stats_IncVariable('PC Points Earned', 2);
exit;
end
else if FindNPCChatText('noticed', True) or FindNPCChatText('lost.', True) then
begin
lost := lost + 1;
exit;
end
else
begin
exit;
end;
end;

function InBoat: Boolean;
begin
result := (getColor(19, 30) = 13421772) and (getColor(19, 51) = 3265113);
end;

function NPC: Boolean;
begin
FindRandoms;
if FindNPCChatText('ritual', True) or FindNPCChatText('Congratulations!', True) or FindNPCChatText('knights', True) or FindNPCChatText('lost.', True) or FindText(x, y, 'attle', UpChars, MCX1, MCY1, MCX2, MCY2) or FindText(x, y, 'defend the Void Knight', UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
Writeln('NPC Message Detected!');
if (FindColorSpiralTolerance(x, y, 540186, 136, 379, 415, 470, 25)) then
Status('NPC Message');
MMouse(x, y, 0, 0);
wait(Random(200) + 20);
Mouse(x, y, 0, 0, true);
WinOrLose;
end
else
Result := False;
end;

procedure RandomButton;
begin
if not (Faster500) then
case Random(3) of
0:
begin
KeyDown(VK_Left);
wait(Random(600) + 500);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(600) + 500);
KeyUp(VK_Right);
end;
2:
begin
KeyDown(VK_Up);
wait(Random(200) + 500);
KeyUp(VK_Up);
end;
end;
if (Faster500) then
case Random(5) of
0:
begin
KeyDown(VK_Left);
wait(Random(200) + 20);
KeyUp(VK_Left);
end;
1:
begin
KeyDown(VK_Right);
wait(Random(200) + 20);
KeyUp(VK_Right);
end;
2:
begin
wait(Random(100) + 20);
end;
3:
begin
wait(Random(100) + 20);
end;
4:
begin
wait(Random(100) + 20);
end;
end;
end;

procedure Report;
var
Answer, WC: Integer;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
cleardebug;
SRLRandomsReport;
Writeln('||===========================||');
Writeln('|| P1nkys PestController ||');
Writeln('||===========================||');
Writeln('|| ' + TheDate(Date_Formal) + ' ||');
Writeln('||===========================||');
Writeln(' Worked For ' + TimeRunning);
Writeln(' Games Played ' + IntToStr(Games));
Writeln('||===========================||');
ReportSmart;
Stats_Commit;
end;

procedure AntiBan;
var
NoBan: Integer;
begin
Noban := Random(18);
case Move of
0: MMouse(x, y, (10 + random(350)), (10 + random(200)));
1: MMouse(x, y, (10 + random(400)), (10 + random(600)));
2: MMouse(x, y, (10 + random(550)), (10 + random(400)));
3: MMouse(x, y, (10 + random(500)), (10 + random(400)));
4: MMouse(Random(MSX2), Random(MSY2), 0, 0);
5: RandomRclick;
6: RandomButton;
10: setangle(1)
end;
end;

function InGame: Boolean;
begin
result := (getColor(370, 74) = 16711935) and (getColor(404, 70) = 16737894);
end;

procedure BoatWait;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
repeat
Status('Waiting In Boat');
ReportSmart;
RandomButton;
FindRandoms;
Report;
wait(Random(100) + 20);
until (NPC) or (Ingame);
Games := Games + 1;
exit;
end;

function FindBoard(x, y: Integer): Boolean;
var
CTS, I: Integer;
TPA: TPointArray;
ATPA: array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(1, 3);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 4942983, MSX1, MSY1, MSX2, MSY2, 3);
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(TPA, 2, 2);
for I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 1, 1);
if (IsUpTextMultiCustom(['Gangplank'])) then
begin
Result := True;
GetMousePos(x, y);
Break;
end;
end;
end;

procedure Plank;
begin
if not (LoggedIn) or not (Players[CurrentPlayer].Active) then
NextPlayer(True);
Status('Searching For Plank');
WinOrLose;
FindRandoms;
case WhatBoat of
'N','n','novice','Novice','I','inter','i','Intermediate','intermediate' :
begin
MakeCompass('S');
KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down);
wait(500);
KeyDown(VK_left);
wait(Random(50) + 50);
KeyUp(VK_left);
end;
'A','a','adv','advance','Advance' :
begin
MakeCompass('W');
Setangle(0);
{ KeyDown(VK_Down);
wait(Random(650) + 500);
KeyUp(VK_Down); }
end;
end;
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
FindRandoms;
Report;
NPC;
exit;
end;

function Range: Boolean;
begin
if (FindColorSpiralTolerance(x, y, 5372475, 267, 132, 292, 160, 1)) then
begin
Result := True;
Writeln('TRUE');
end
else
Result := False;
Writeln('False');
end;

var
qp: integer;

procedure QPrayer;
begin
if QuickPrayer then
QP := DTMFromString('mbQAAAHicY2VgYFBmZGBQAmItKC0JxGuA4kuBeB0QbwXi9UB88+1dhrVbNoAxiB1h38yADTBiwWAAAKBQDp8=');
if FindDTM(QP, x, y, 701, 52, 733, 79) then
begin
MMouse(x, y, 0, 0);
Mouse(x, y, 0, 0, true);
end
else
exit;
end;

procedure SpecAttack;
begin
if SpecialAttacks then
begin
Writeln('Toggling Special');
Status('Special Attack ON');
MouseBox(528, 179, 545, 195, 1);
begin
if (FindColorSpiralTolerance(x, y, 3566664, 545, 208, 738, 430, 25)) then
Status('Special');
MMouse(x, y, 0, 0);
wait(Random(100) + 20);
Mouse(x, y, 0, 0, true);
end;
end;
end;

function EFindObjCustom(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tol: Integer): Boolean;
begin
Result := FindObjEx(cx, cy, Text, Color, Tol, 50, 33, 134, 542, 465);
end;

procedure FightPests;
var
Z, R, CTS: Integer;
begin
Status('Fighting Pests');
if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2108184, 5051472, 3228504, 4942983,3162776], 3)) then
begin
if (counter > 1000) then
begin
Report;
counter := 0;
end;
R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;
Exit;
end
else
Mmouse(x, y, 0, 0);
wait(Random(100) + 20);
if isuptext('ttac') then
begin
if not Faster500 then
begin
Mouse(x, y, 0, 0, False);
ChooseOption('ttack');
end
else
begin
Mouse(x, y, 0, 0, true);
wait(random(500) + 100);
end;
if Faster500 then
begin
wait(Random(100) + 20);
Report;
end
else
wait(2000);
Report;
end;
end;


function Portal(Name: string): Boolean;
begin
case Name of
'red':
if (FindBlackChatMessage('south-western')) then
begin
Result := True;
Writeln('Red Portal Shield Down!');
Exit;
end
else
Result := False;
'yellow':
if (FindBlackChatMessage('south-eastern')) then
begin
Result := True;
Writeln('Yellow Portal Shield Down!');
Exit;
end
else
Result := False;
end;
end;


procedure FreeMem;
begin
FreeDTM(step1);
FreeDTM(step2);
FreeDTM(step3);
end;

begin
Disguise('P1nky PestController');
ClearDebug;
ClearReport;
Smart_Server := 17;
Smart_Members := false;
Smart_Signed := true;
Smart_SuperDetail := false;
begin
if (SRLStats_Username = '') then
{ SetupSRLStats(654, 'Anonymous', 'anon1337')
else }
SetupSRLStats(654, SRLStats_Username, SRLStats_Password);
SetUpSRL;
declareplayerz;
ActivateClient;
counter := 0;
ClearDebug;
LoginPlayerToLob;
OpenWorldScreen;
SelectWorld(53);
LoginPlayer;
Inc(counter);
repeat

begin
FreeMem;
NPC;
Report;
Plank;
BoatWait;
begin
Spot1;
Spot2;
begin
SpecAttack;
QPrayer;
end;
repeat
FightPests
until not (Ingame);
end;
end;
until (false);
end;
end.




Thanks a lot bro! Awesome script !! Appreciate the quick fix !

edit: running it now, will post any bugs i find, so far so good !
edit2: For the first 5 games played, it took about 5-10 minutes to click the plank. after 10 minutes i just clicked it myself. after that it seems to be clicking the plank right away after leaving a game !

edit 3:

||===========================||
|| P1nkys PestController ||
||===========================||
|| April 13th, 2012 ||
||===========================||
Worked For 3 Hours, 13 Minutes and 3 Seconds
Games Played 75
||===========================||


Pretty damn nice considering it spent about 25 minutes on the first 5 games trying to click the plank !

junsain2012

2012-04-14 02:42:34

SRL Compiled in 16 msec
SMART Initialized.
Loaded: Server 17, Members: False, Signed: True, Super Detail: False.
Error: Exception: Access violation at line 142
The following DTMs were not freed: [SRL - Lamp bitmap, 1]
The following bitmaps were not freed: [SRL - Mod bitmap, SRL - Admin bitmap, SRL - Flag bitmap]

Help????

Elitezer0

2012-04-14 11:04:38

Still runs south:/

Edit: sometimes it catches itself and runs to the middle midway into running south

P1nky

2012-04-14 19:05:18

Updated to ; Let me know how it goes for y'all!

Gucci

2012-04-14 19:20:11

From: P1nky
Updated to ; Let me know how it goes for y'all!


Nice, can't wait to give it a go, love this script awesome job P1nky

melee

2012-04-14 23:09:40

I'll test I overnight. Watched it do 2 games and only problem is it moves mouse rapidly after winning a game on the void knight lady's face before entering the boat.

junsain2012

2012-04-14 23:42:00

the beta version was pretty good

Makavelle

2012-04-14 23:56:45

hello the bot doesn't go to the middle, it goes near the right door next to the ladder for towers.

melee

2012-04-15 08:34:11

[Update] Ran I overnight and only got 46 points and when I logged in account was not in a random but by the intermediate boat?

nathan lad

2012-04-15 10:37:36

just wanna say thanks for maintaining and bettering ure script so regularly

P1nky

2012-04-15 12:48:37

is working like a charm for me:

Worked For 5 Hours, 53 Minutes and 24 Seconds
Games Played 131

mads4856

2012-04-16 10:43:59

Super AWESOME script dude keep up the gooooooood work :D

superbuster4

2012-04-17 08:50:44

current bugs: runs to inter boat and gets stuck before gangplank, only picks trickster boots.

G00die

2012-04-17 17:00:11

||===========================||
|| P1nkys PestController ||
||===========================||
|| April 17th, 2012 ||
||===========================||
Worked For 4 Hours, 50 Minutes and 49 Seconds
Games Played 108
||===========================||

stopped it because i needed to change tickets in :p

Oxygen

2012-04-17 17:10:48

Nice!

Laffytaffy

2012-04-17 19:04:19

Downloaded this script going to test it out and post progress reports.

nikolas

2012-04-17 20:01:47

How are ya'll getting yours to work? Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now. That's what i keep getting. Like it wont click the plank. Its turns the camera then keeps clicking and then says the above ^

superbuster4

2012-04-18 09:34:11

for some reason it ran well for 12hs but then i restated it manualy and now it runs to intermediate and advance boat, also please add boots support, i currently have 4 pairs of trickster boots and i don't even use trickster.

P1nky

2012-04-18 17:29:22

From: superbuster4
for some reason it ran well for 12hs but then i restated it manualy and now it runs to intermediate and advance boat, also please add boots support, i currently have 4 pairs of trickster boots and i don't even use trickster.


From: nikolas
How are ya'll getting yours to work? Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now. That's what i keep getting. Like it wont click the plank. Its turns the camera then keeps clicking and then says the above ^

Give me few days Mates.

superbuster4

2012-04-18 22:56:28

From: P1nky
Give me few days Mates.
''

its cool i know we cant rush genius, anyways hows your Soul Wars script coming?

Onemind

2012-04-18 23:09:15

P1nky, will your Soul Wars script be released to the public or will it be sold?

P1nky

2012-04-19 12:38:19

From: superbuster4
''

its cool i know we cant rush genius, anyways hows your Soul Wars script coming?


From: Onemind
P1nky, will your Soul Wars script be released to the public or will it be sold?


You'll see in couple days :), change of plans on the release as well;

superbuster4

2012-04-19 15:57:24

From: P1nky
You'll see in couple days :), change of plans on the release as well;


i hope the change is for the better i do not want to result to using powerbot for soul wars i just dont trust them, and paris.

Onemind

2012-04-19 16:16:13

From: superbuster4
i hope the change is for the better i do not want to result to using powerbot for soul wars i just dont trust them, and paris.


Same here, I don't want to use EpicBot nor Powerbot's Soul Wars, I would love to use P1nky's script :)

polska94

2012-04-19 23:32:27

can you make the bot spam click so that it can get into boats quickly right after the end of a round?

superbuster4

2012-04-20 08:41:51

From: polska94
can you make the bot spam click so that it can get into boats quickly right after the end of a round?


that's not good see people put vex out now so spamming might lead it to hitting vex and stopping the client keep it steady and nothing sudden, i would love if he added portal support but that's so much walking to add… a boy can dream…

Gotmurked

2012-04-20 12:22:19

I keep trying to run but im getting this


Exception in Script: Unable to find file 'srl\srl.simba' used from ''

I would love some help if anyone knows why its doing this?

superbuster4

2012-04-20 12:24:22

From: Gotmurked
I keep trying to run but im getting this


Exception in Script: Unable to find file 'srl\srl.simba' used from ''

I would love some help if anyone knows why its doing this?


now your going to get chewed out. lol you got 1 post its ok, but do some more reading before you post.

did you follow the instructions on how to instal simba? did you update all your shiz?

Gotmurked

2012-04-20 13:01:07

Yea i am fairly new here :p I have installed and updated simba with no effect, im not sure what else i can do?

Gotmurked

2012-04-20 13:09:43

Okay i think ive made a little progress. now im getting this lol


Exception in Script: Plugin(libsmart32) has not been found

Gotmurked

2012-04-20 16:19:51

Nevermind i got things working after trial and error!! The only bug so far is when im going to high level boats and while in pest control the cursor gets hung on fire capes. Just letting you know and thank you!

superbuster4

2012-04-20 17:21:58

From: Gotmurked
Yea i am fairly new here :p I have installed and updated simba with no effect, im not sure what else i can do?



strange ask kyle or go to discussion they would know what to do.

vkillerv

2012-04-21 17:24:18

awesome script, a little botlike but free nonetheless



||===========================||
|| P1nkys PestController ||
||===========================||
|| April 21st, 2012 ||
||===========================||
Worked For 3 Hours, 18 Minutes and 21 Seconds
Games Played 75
||===========================||

evanw25

2012-04-21 17:35:37

I'm gonna try this. Cant wait!

Moni

2012-04-22 15:20:15

It hovers over the ladder for like 5min until it clicks it….

Moni

2012-04-22 15:21:15

Also it drags over the map

kibbles18

2012-04-22 18:29:45

bad script

HolyWord

2012-04-23 00:10:12

I've used your script before and it worked really well. But this has been happening lately.


It just runs to this spot and just sits there and looks for shifters.

P1nky

2012-04-23 03:37:56

Tomorrow I will fix, please be patient.

P1nky

2012-04-23 10:35:39

Updated to [J], let me know how it goes.

Thanks

sham

2012-04-23 12:09:48

I will test for you right now, will upload a proggy asap if it runs, or a report if I run into any problems :)

EDIT: tested:

firstly very nice paint ;), but it keeps flashing?

theres no failsafe if we get off the platform, so I replaced lines 2737-2743:

R := Random(4);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: wait(Random(25) + 20);
3: wait(Random(25) + 20);
end;

with:
   
R := Random(100);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: if (ingame) then Spots('Spot1');
3: wait(Random(25) + 20);
end;

R := Random(10);
case R of
0: RandomButton;
1: wait(Random(25) + 20);
2: if (ingame) then Spots('Spot2');
3: wait(Random(25) + 20);
end;

This helps make sure I get back every now and again, and will only happen if no shifters are around anyway (due to line 2730)

EDIT2: win/lost games dont seem to be showing up? ill have a look through it and see if I can find a fix, still looking into the flashing thing, but im sure i sure a fix for that somewhere

EDIT3: Some personal fixes I did to ensure I dont miss a boat:

1. Commented out all occurrences of randombutton

2. Comment out the
MakeCompas('S');

in spot2 and placed
MakeCompas('[B]E[/B]');
instead of the
wait(1300);
on line 2358

3. Commented out lines 2633 to 2653 in Plank (this only really helps for veteran, not sure about others)

4. replaced this from lines 2655-2665:
   
repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
screen;
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
with:

repeat
RewardBox;
ReportSmart;
if not RewardBox then
if FindBoard(x, y) then
screen;
Status('Looking for Plank');
wait(200 + random(232));
if Isuptext('angplank') then
repeat
wait(50+random(50));
ClickMouse2(true);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);
until (FindBlackChatMessage('You board the lander') or (ingame) or FindBlackChatMessage('reach that') or (InBoat)) Setangle(0);

5. If the above is done we can comment out the NPC call on line 2847, because no legit player ever really clicks that right?

Ill add more as I go along

Explicit1

2012-04-23 12:28:59

Testing [j] out now! will update with a proggy later

AverageWafer

2012-04-23 12:32:59

Testing [J] now, I'll give you a 6 hour proggie when I get back home later :)

AverageWafer

2012-04-23 12:46:33

The proggie is extremely glitchy, where do I turn that off?

Is that GameReport = True;?

sham

2012-04-23 12:49:10

From: AverageWafer
The proggie is extremely glitchy, where do I turn that off?

Is that GameReport = True;?


Yes..

EDIT: next time try it and check first? (you may learn something)

sham

2012-04-23 12:51:10

From: kibbles18
bad script


This is a pathetic comment, no feedback or proggy or evenan explanation…

And if it is so bad try fixing it yourself and let us know how you did it?

sham

2012-04-23 12:57:43

In addition to my previous post:

I also added a few more:
if not (ingame) then Exit;
or
else if not (ingame) then Exit //this is usually in the middle of one of the existing if's before the else

throughout FightPests to exit the loop quickly when a new game starts, (as you can tell I dont like missing a boat lol, usually means you miss 2/3 if that happens :s)

proggy:

||===========================||
|| P1nkys PestController ||
||===========================||
|| April 23rd, 2012 ||
||===========================||
Worked For 1 Hours, 9 Minutes and 17 Seconds
Games Played 29
||===========================||

just to show that its quicker and doesnt miss many rounds, and still running ;)

ahlie1990

2012-04-23 16:51:37

Got this error


[Error] C:\Simba\Includes\SRL/SRL/misc/paintsmart.simba(560:12): Unknown identifier 'TPAFromEllipse' at line 559
Compiling failed.

any tips?

P1nky

2012-04-23 17:20:07

Thank you Sham, I am going to give you some rep+ as well. Really great feedback, will use your suggestions and advice in the next update. Yeah i'll fix the flashy annoying proggie as well, I did this update before going to school (so was in a hurry lol).

-Cheers.

sham

2012-04-23 19:06:32

From: P1nky
Thank you Sham, I am going to give you some rep+ as well. Really great feedback, will use your suggestions and advice in the next update. Yeah i'll fix the flashy annoying proggie as well, I did this update before going to school (so was in a hurry lol).

-Cheers.


No, thank you for making the script I am just trying as much as I can to help and not be a leecher.

Ps I will pm you the code i'm using, you can have a look as I may have forgot to mention a few other changes?

nikolas

2012-04-24 12:32:41

I dont know if im doing something wrong or setting this up wrong but when i run the script it just clicks in some random spot and keeps clicking there then it says this "Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now."

unbreakable

2012-04-25 07:47:47

thats fucked up…. idk if it is the script or this community, but the bot runs around and goes to the middle and say we're villavu.vom

wtf? i dont want my account being banned.

superbuster4

2012-04-25 14:32:35

this works for me set the paint flash delayed to every time it sees the npc message that the game is over, i think the reason its flashing is because its updating itself.

P1nky

2012-04-27 11:49:54

I will update this script by today, check back soon!

xtrapsp

2012-04-27 15:02:38

From: unbreakable
thats fucked up…. idk if it is the script or this community, but the bot runs around and goes to the middle and say we're villavu.vom

wtf? i dont want my account being banned.


This is a complete lie.

As for the script. I'm running on Version [D] Because it works better atm :p

edit: This one gets stuck to now :/ 2 hours 4 commedations

Momentum561

2012-04-27 16:35:39

I am using the current script. I disabled the GameReport and now it works fine. Before it used to randomly close out after an hour or two. I just went on almost 5 hours and could have gone longer, but decided to level another skill up. Thank you for the script!

||===========================||
|| April 27th, 2012 ||
||===========================||
Worked For 4 Hours, 32 Minutes and 15 Seconds
Games Played 90

xtrapsp

2012-04-27 18:14:01

Ok P1nky, got some news. I started editing it for my own personal use so it does the other pests… not the center ones (Not enough exp there) I will send it over :) + I might have Portals added too but it's a bit buggy

unbreakable

2012-04-27 23:24:25

From: xtrapsp
This is a complete lie.

As for the script. I'm running on Version [D] Because it works better atm :p

edit: This one gets stuck to now :/ 2 hours 4 commedations


hmm so i lied? okay. Fine to whoever gets banned. gl.

I ran this script for awhile. Watched it to see if i "acted" like a bot.

It walked over by the doors. Ran to the middle and said " We're www.villavu.com "
now why the fuck would i lie?

P1nky

2012-04-28 01:19:48

From: xtrapsp
Ok P1nky, got some news. I started editing it for my own personal use so it does the other pests… not the center ones (Not enough exp there) I will send it over :) + I might have Portals added too but it's a bit buggy


I made a private version that runs around as well and kills, but please send yours to me; It be fun to see what you have done and I'd credit you and prolly edit/upload it. I been working on the SW script with a Mate lately, and have my testing account at SW 24/7 lol.

xtrapsp

2012-04-28 02:04:35

From: P1nky
I made a private version that runs around as well and kills, but please send yours to me; It be fun to see what you have done and I'd credit you and prolly edit/upload it. I been working on the SW script with a Mate lately, and have my testing account at SW 24/7 lol.


When I have it working a bit cleaner I will :P But if your keeping it private then I'l do that same if thats ok? Cause we don't want PC being ruined ;)

Decision

2012-04-28 03:46:04

I've gotten full void elite and all the masks with this script gotta say I love it for the fact that its so stable! I recommand it to anyone who wants to get exp or the set!

erde0

2012-04-28 10:04:46

I got my range level from 60 to 65 in no time, and my magic from 60 to 70 :D
Thank you alot Pinky!

danhughesx3

2012-04-28 14:08:50

Hey P1nky, could you update this so it can attack portals and everything, not just the npcs in middle? Thanks.

ShadowsTM

2012-04-28 14:35:25

Well just read the script and take out the code that makes it do that, Havn't ran it myself but I highly doubt it does that, Why would it… Pointless.

Gestapo

2012-04-28 15:18:31

wtf i got random in pest control

bricks

2012-04-28 17:32:38

hey P1nky can you please add code to allow the character to attack the portals. :D

Rezozo

2012-04-28 22:55:38

From: Xenophis
wtf i got random in pest control


That sucks…

Anyway, P1NKY, Its supposed to always go to the middle right? Mines doesn't… It wanders, and gets reletively no kills… Script problem or something else?

Ashihtaka

2012-04-29 01:10:16

The earlier versions of this script has gotten me many PC points,
for those of you who have it running smoothly now, which version are you running?

P1nky

2012-04-29 01:42:28

From: joeygupta
That sucks…

Anyway, P1NKY, Its supposed to always go to the middle right? Mines doesn't… It wanders, and gets reletively no kills… Script problem or something else?


It's the script, I will update it soon! (hopefully tomorrow)!

tonypham49

2012-04-29 02:58:42

Why do we need both parts of that download isnt there only 1
GOod news . I GOT IT WORKING

I had to log in manually. but it chose world automatically.

Thanks alot will report back with a proggy by tommorow

Rezozo

2012-04-29 07:08:39

From: P1nky
It's the script, I will update it soon! (hopefully tomorrow)!


Okey Dokey!

Edit: Working for me again! I just added some old fashion waits, though I don't know why it worked…

kingbrown

2012-04-29 16:56:15

Works like a charm.
Thank you very much.

nikolas

2012-04-29 18:37:31

How do all you get this to work? im still having the same problem. it just spam clicks some random spot. then is says "Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now."

BFed123

2012-04-29 20:25:09

The bot is like glitching on the bottom where it says time played, and its not really attacking anything. It joins games and everything. What is causing the weird lag?

Jokester

2012-04-29 23:40:36

Im gonna run this non stop for a month with a crap account and see how far I get! Did you add something to your sig?

Ejjman

2012-04-30 18:43:28

Hey P1inky, this is a great script start. I can't wait till all these features are implemented.

Just a few notes, though, that would be easy to add and help lots (may/may not have been suggested):

-Relocate to center. If an enemy ports out, it follows and gets stuck. There's 5 towers while in center, and those could be used to relocate back to center or find position.
-Less clicking of things in chat. As someone suggested, legit players don't hit green arrow often in chat box.
-Drop requirement to lower screen or go north to cross onto plank. It would be faster to just find the plank while the screen is all the way up or so map isn't required to be north.

The script is great so far, and once all portals are added, it will be great.

Thx

neo arrow pk

2012-05-01 02:38:54

It still tends to go to the intermediate boat after an hour.
Other then that, great script.

BFed123

2012-05-01 03:18:59

I used the first version and its working flawlessly, almost at 6 hours played straight, 127 games. Theres a few games where not enough zeal but its not the bots fault.

carla_jacoe

2012-05-01 07:27:20

From: neo arrow pk
It still tends to go to the intermediate boat after an hour.
Other then that, great script.


Im experiencing the same thing.

superbuster4

2012-05-01 13:28:11

is it just me or do you guys think pinky is out to get us?


my reason for concern:

"we are villavu hear us roar"

it is quite humorous but also dangerous

P1nky

2012-05-01 18:02:38

Uploaded [K], tell me how it goes added a extra random route and such; Credits to Shams for some add-ons. :)

fslashthroat

2012-05-01 19:32:29

From: P1nky
Uploaded [K], tell me how it goes added a extra random route and such; Credits to Shams for some add-ons. :)


fixed my issue with it not clicking the gangplank after perfectly, thanks dude! +repped

fslashthroat

2012-05-01 20:10:06

would be excellent if you could add dbaxe spec with weapon switch like the old school scar pest control script I used to use

rjk1990

2012-05-01 20:20:19

Script looked awesome, I tried it out and my guy just runs to the middle and attacks nothing unless auto retaliating xD

not sure whats wrong, tried each script and not sure of the differences

Jokester

2012-05-01 20:22:19

From: rjk1990
Script looked awesome, I tried it out and my guy just runs to the middle and attacks nothing unless auto retaliating xD

not sure whats wrong, tried each script and not sure of the differences


That is exactly what it is supposed to do if I'm not mistaken.

rjk1990

2012-05-01 20:26:59

From: Jokester
That is exactly what it is supposed to do if I'm not mistaken.


Ah i think it was my bad, seems i over looked the special option and that stalls the script. shall test now

edit: Nope, most of the time just stand in the corner of the middle away from any pests and not getting in combat at all :( Script says to turn auto retaliate off so i doubt this is intended, but so far is the only way i /might/ get zeal

P1nky

2012-05-01 23:52:54

It's suppose to attack the pests, use the updated version?

BFed123

2012-05-02 02:17:16

Hey Pinky, for some reason the 2 more recent scripts cause extreme lag and don't function properly, do you know what could be the cause? Thanks.

rjk1990

2012-05-02 06:38:39

From: P1nky
It's suppose to attack the pests, use the updated version?


There are three version on the OP, none of them function correctly as i've said. If there is a newer version not linked there that works please enlighten me. For now each script just wonders to a different part of the map and hovers over pests without clicking

As for right now, i'm using the fixed script someone posted 5 or so pages back. It attacks but is slow to click the bridge, i'm gonna try merging his with you're newest one, so i have attacking and boarding the boat

P1nky

2012-05-02 11:21:10

From: BFed123
Hey Pinky, for some reason the 2 more recent scripts cause extreme lag and don't function properly, do you know what could be the cause? Thanks.


Hmmm, try turning off the debug and 'fast500' try that.

From: rjk1990
There are three version on the OP, none of them function correctly as i've said. If there is a newer version not linked there that works please enlighten me. For now each script just wonders to a different part of the map and hovers over pests without clicking

As for right now, i'm using the fixed script someone posted 5 or so pages back. It attacks but is slow to click the bridge, i'm gonna try merging his with you're newest one, so i have attacking and boarding the boat


Well worked fine for me:
||===========================||
Worked For 4 Hours, 54 Minutes and 8 Seconds
Games Played 106
||===========================||

your graphic settings is it on your lowest?
Also go to Line 2816:
   if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [2767754, 2108184, 1526335{ 3689865,5993091,724004, 4942983, 4903920, 2108184, 5051472, 3228504, 3355445, 3162776,}], 3)) then

update the colors (of the green and red pests).

Let me know how it goes.

neo arrow pk

2012-05-02 13:44:20

How can i prevent my character from walking or even entering intermediate boat instead of my selected novice boat?

fslashthroat

2012-05-02 18:39:45

version k , fails if someone drops a clan vexilum

P1nky

2012-05-03 01:07:55

From: fslashthroat
version k , fails if someone drops a clan vexilum


What you mean?

orbero

2012-05-03 02:55:09

From: P1nky
What you mean?


If someone puts one where you enter the boat the clan thing gets in the way so it wont click the plank to enter.

tvjj

2012-05-03 03:17:06

From: orbero
If someone puts one where you enter the boat the clan thing gets in the way so it wont click the plank to enter.


ya i am having the same issues if some one puts a clan vex. at the starting of the gangplank it has a very hard time to enter the boat, i did some tinkering with the compass direction and i got it to work a little better but it doest run as fast as it did.

i also have like 48 pairs of trickster boots if you can, can you make that randomized pinky?

ajhockey88

2012-05-03 16:40:40

doesnt attack anything and im on Version K. If it does attack stuff its cuz i have auto retal on because with it off i would just stand in one place the whole game

Rezozo

2012-05-03 17:39:58

The new one does not work… What is the difference? Could I take out parts from [K] and put it in [J]?

Still doesn't go to center.

Edit: Using the previous one, working nicely!

ajhockey88

2012-05-03 17:49:27

From: joeygupta
The new one does not work… What is the difference? Could I take out parts from [K] and put it in [J]?

Still doesn't go to center.

Edit: Using the previous one, working nicely!


which one? I,J, or K?

Jake

2012-05-03 18:48:49

Having a problem with all of them :/
All go to the center, but sometimes it wont attack the red shifters. However, it will always attack the green ones.

I faced the clan vex issue as well, its kind of annoying, very annoying, because the bot cant enter the boat.

Bots got stuck here

sham

2012-05-03 19:20:58

From: P1nky
Uploaded [K], tell me how it goes added a extra random route and such; Credits to Shams for some add-ons. :)


Great update!!! Cant wait till this script is fully complete.

I will have a better look through later and actually run it after ive done a bit more runespanning :P

+rep

EDIT: ps if you guys struggle to get your 500, try using a bgs or d claws, bgs because it has great strength bonus and is relativly cheap, and claws because of the crazy spec, should be a great first hit :) (I have hit 475+ (not max hit) in first hit with bgs spec with only 85 str and no other strength bonus). If they are stilltoo expensive, borrow one for 6 or 24h hours ata a time and run the script fort he entire time ;)

HolyWord

2012-05-04 02:17:16

||===========================||
|| P1nkys PestController ||
||===========================||
|| May 3rd, 2012 ||
||===========================||
Worked For 4 Hours, 37 Minutes and 14 Seconds
Games Played 101

Thanks Pinky! Great script :)

P1nky

2012-05-04 03:05:45

Re-Uploaded [K] with the boarding plank fix!
Check it out!

Deadshot

2012-05-04 03:46:25

sadly isnt working that great for me but none of the other scripts are either so maybe its just me

tvjj

2012-05-04 11:31:41

From: P1nky
Re-Uploaded [K] with the boarding plank fix!
Check it out!


awesome pinky thank you, going run this now let you know how it runs im gunna babysit it for like 1/2 an hr or so.


so i ran it for 40 mins it played around 12 games, it is flawless so far other than, the only thing that could need some fine tuning now is that it really doesn't like to attack the red shifters, I'm going to see if i am able to add that in, my scripting lvl is way under 9000 so i dunno if i will be able to lol.

ya tbh i haven't a clue how to make it attack another creature lol.

mickeymouse

2012-05-04 12:06:02

is it just me or the script doesnt attack the crickets in the center for intermediate and advance boat?

nikolas

2012-05-04 13:04:26

Is it just me or does the script when started just rotates the screen then spam clicks a spot? because thats all that happens when i start the script. then is says "Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now." but other then that you have to click the plank yourself and then the script works great until you have to click the plank again. someone please help me out.

P1nky

2012-05-04 14:15:45

From: nikolas
Is it just me or does the script when started just rotates the screen then spam clicks a spot? because thats all that happens when i start the script. then is says "Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now." but other then that you have to click the plank yourself and then the script works great until you have to click the plank again. someone please help me out.

your graphic setting is it set right?

From: mickeymouse
is it just me or the script doesnt attack the crickets in the center for intermediate and advance boat?

colors must have gone bad, ima have to update.
From: tvjj
awesome pinky thank you, going run this now let you know how it runs im gunna babysit it for like 1/2 an hr or so.


so i ran it for 40 mins it played around 12 games, it is flawless so far other than, the only thing that could need some fine tuning now is that it really doesn't like to attack the red shifters, I'm going to see if i am able to add that in, my scripting lvl is way under 9000 so i dunno if i will be able to lol.

ya tbh i haven't a clue how to make it attack another creature lol.


Well the colors may be bad for you, you can change that by going into 'FightPest' and update the colors :).

Rezozo

2012-05-04 15:07:12

From: ajhockey88
which one? I,J, or K?


Im using J, Added some stuff in b/w and it works moderately well.

nikolas

2012-05-04 16:19:24

whatever i did i got it to work :)

tvjj

2012-05-04 16:43:46

From: P1nky



Well the colors may be bad for you, you can change that by going into 'FightPest' and update the colors :).


wow and to think i just had to scroll right, i knew how to do it just didnt open my eyes lol.

bricks

2012-05-04 20:28:20

Thank you pinky <33!!!!!!!

ajhockey88

2012-05-04 21:15:23

how excatly do we update our colours?

Striken

2012-05-04 23:51:27

Love the script man! Already got me a Void Knight Top :p

Run S Kape

2012-05-05 04:05:57

Thanks for the script .Many are waiting for ur script , updating the colors would fix it.

wakka165

2012-05-05 11:22:48

when the game finishes, the bot moves down the camera in order to get in the boat. Isn't that a giveaway? darn those clan vex -_-

ajhockey88

2012-05-05 14:06:21

can someone tell me how to manually update the colours?

catlover444

2012-05-05 17:07:51

try this for updated colors. worked in a few games for me:

if not (EFindObjCustom(x, y, ['hifter', 'Shifte', 'Shifter', 'hift'], [4774633, 5395286, 10857641, 14477023], 3)) then

Rezozo

2012-05-05 20:53:06

Does anyone still have the issue with it going farther than the stairs?
I think Ill tamper till I get somewhere!

bricks

2012-05-06 19:03:44

Are you saying going around and fighting near the portals ect. or what?

ajhockey88

2012-05-06 19:54:36

From: JoeyGupta
Does anyone still have the issue with it going farther than the stairs?
I think Ill tamper till I get somewhere!


im still having a problem with it finding the monsters, it finds them like every other game it seems

bricks

2012-05-06 20:50:53

Can someone please add the code where after defending the king for the first minute or so, it then starts going to portals that would be amazing.

destinyxx

2012-05-07 11:33:10

guyz i know this might be too "noobish"…
but whats the pinkyscript
,[j], and [k]s
difference?which one is the updated one?

GanjaBro

2012-05-07 12:36:55

It doesn't always find the monsters. most games i get kicked (so 0points).
but when i click on the middle the script works great

Rezozo

2012-05-07 15:30:29

From: bricks
Can someone please add the code where after defending the king for the first minute or so, it then starts going to portals that would be amazing.


First, I think its a Knight, not king, second- that's going to take a long time if its not from P1NKY himself, mainly because we need to know in depth about his procedures, variables, dtms, object finding techniques and so on… If some of us were to work together, maybe in an hour we could add it…?

From: destinyxx
guyz i know this might be too "noobish"…
but whats the pinkyscript
,[j], and [k]s
difference?which one is the updated one?


Follow the yellow alphabetic road…

From: GanjaBro
It doesn't always find the monsters. most games i get kicked (so 0points).
but when i click on the middle the script works great


From: ajhockey88
im still having a problem with it finding the monsters, it finds them like every other game it seems


I think we all have that, but even then it works pretty good though right, at least for color?

omfgomfg

2012-05-07 15:34:27

The clan vex gets in the way so you can't cross the gangplank, please will you fix this?

bnorman93

2012-05-07 21:44:48

Please fix this script idk how to code anything lol

Rezozo

2012-05-07 21:54:55

From: bnorman93
Please fix this script idk how to code anything lol


Which part, maybe in some spare time, I'll make a quick fix.

Bahamutzero

2012-05-07 23:31:05

It sits there and gives me errors: Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now.

Constantly.

Batman

2012-05-08 02:32:10

Suddenly all mine does is stand there and spin the camera? any ideas?

neo arrow pk

2012-05-08 06:35:14

Same goes for me, it sits down and rotates the camera everytime it reloads a new screen for instance upon starting the script in before entering the plank. When u press disable smart and enable again it stops rotating and enters the boat but when it loads a pest control game and after that enters a game it starts rotating again, bet this has something to do with jagex pissin on colour bots :p. easy fix probly but i dunno how lol.

P1nky

2012-05-08 14:36:07

Mates I have finals going on I have 2 more left (I will be done by Thursday), I will fix/update this script than!

Sorry for the hold up, and the fixes are easy; If I do have spare time today or tomorrow I will surely post a quick fix. Sorry for inconvenience and not updating y'all.

neo arrow pk

2012-05-08 16:58:13

Dont worry, its fixed. just needed an update on srl and all the other tabs.
Good luck on finals ;)

Bahamutzero

2012-05-08 18:53:08

From: P1nky
Mates I have finals going on I have 2 more left (I will be done by Thursday), I will fix/update this script than!

Sorry for the hold up, and the fixes are easy; If I do have spare time today or tomorrow I will surely post a quick fix. Sorry for inconvenience and not updating y'all.


I hear this is the one of the fastest ways to train combat to 99… Cant wait to prove/disprove this theory

bricks

2012-05-08 22:00:56

From: JoeyGupta
First, I think its a Knight, not king, second- that's going to take a long time if its not from P1NKY himself, mainly because we need to know in depth about his procedures, variables, dtms, object finding techniques and so on… If some of us were to work together, maybe in an hour we could add it…?



Follow the yellow alphabetic road…





I think we all have that, but even then it works pretty good though right, at least for color?


Ya he's a knight my bad :D but uhm would it be simpler if after staying in the middle for say a minute to then just go to each of the portals while still looking for NPC'S to fight? The only problem that I have, which may be due to partial lagg/shit cpu, is it will take a few seconds for the script to recognize the NPC's on screen, and by the time it right clicks them they are really low health or already dead. I don't use the faster 500 because I have a little bit of lagg, not due to my connection but my video card ect., and it clicks a lot and some times will set me directly on the stairs, or even outside of the middle facility. I'd appreciate it if you guys could look into more methods of dealing with lagg as it would correct most of the errors us noobs experience on here.
EDIT: I don't mean to complain! This script is working for me at the moment and I appreciate it a bunch.

naturevalley

2012-05-08 22:31:02

Nice.

mid flows

2012-05-09 00:32:17

is there a way to make it go past knight cause i will never win a game if it stays there

Rezozo

2012-05-09 07:11:15

From: bricks
I'd appreciate it if you guys could look into more methods of dealing with lagg as it would correct most of the errors us noobs experience on here.


For lag, start up the script, when smart opens:

(Might Work)


Open task manager,
Click on processes,
Find simba (Most likely top),
Set priority to RealTime.

This should fix some of it. If not:

(Definitely Will Work!)


Go to the smart window,
On the side you will see a small movable arrow,
Move it to the top.

Try these out, then post.

bricks

2012-05-09 10:15:59

From: JoeyGupta
For lag, start up the script, when smart opens:

(Might Work)


Open task manager,
Click on processes,
Find simba (Most likely top),
Set priority to RealTime.

This should fix some of it. If not:

(Definitely Will Work!)


Go to the smart window,
On the side you will see a small movable arrow,
Move it to the top.

Try these out, then post.


Yes I already know about those methods, and still get a bit of lagg.
Heres some advice though don't use Real Time because it actually slows down the computer eventually, I did a little research and found out real time is for like real time meters and censors and shit. I put it on 'High', and drag the arrow all the way to the top, but still experience a bit of lagg. It's due to a hardware memory issue, every time my computer starts up it gives me an error about usin the lowest possible memory because it can't recognize something. I forgot the actual error but I researched it and couldn't find a solution because well, it's hardware and i'd have to buy a new motherboard or a memory stick. So ya I'd appreciate it if the people who have used their brain to learn and create the code would dedicate some of their intellegence towards dealing with lagg. Like making function more redundant, or actually finding new methods of screening ect. In this script he has done that by making the mouse click the gangplank multiple times, I personally think it's to much because actually sometimes i will get in the boat and it will click me out of the boat because its clicking so much/lagg. I also think that it clicks a little to often/much when finding the shifters, as I said before if i use faster 500 it's noticeable, and sometimes it will place me completely outside of the middle. There's that feedback and also, you should make a fail safe to where if we do run somewhere away from the middle on accident due to lagg, to run back to the middle, or to the portals as I suggested previously. Hope you take some of this into consideration (:

P1nky

2012-05-09 13:07:00

From: neo arrow pk
Dont worry, its fixed. just needed an update on srl and all the other tabs.
Good luck on finals ;)


Thank You :) 1 more to go Mates!

superbuster4

2012-05-09 14:32:43

ehh hope the new release wont have the we are villavu hear us roar thing.

shilo

2012-05-10 12:57:56

they bot runs amazingly only problem I have is sometimes I run over to the intermediate boat instead of the advanced one. Also sometimes I don't get into the boat. Any suggestions how to fix it?

P1nky

2012-05-10 13:42:59

From: superbuster4
ehh hope the new release wont have the we are villavu hear us roar thing.


Okay, you are not the only one who had said this, what script are you using?

bnorman93

2012-05-10 13:45:43

Did you get a chance to update the script yet man

tvjj

2012-05-10 13:47:08

From: P1nky
Okay, you are not the only one who had said this, what script are you using?


i just opened my simba and your script and ctrl+f villavu and only found 2 instances, both being in this:


//P1nky's PestController

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
GameReport = True;
SpecialAttacks = True;
QuickPrayer = True; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]
WhatBoat = 'N';{
Intermediate
Advance
Novice }


i have never had that problem :/

P1nky

2012-05-10 16:43:49

From: tvjj
i just opened my simba and your script and ctrl+f villavu and only found 2 instances, both being in this:


//P1nky's PestController

//Make sure to have Auto Retiable off.
//Set Character Outside the Boat.
const
GameReport = True;
SpecialAttacks = True;
QuickPrayer = True; //Make sure to have Quick Prayer Set!
Faster500 = True; //Having trouble getting your '500'? Well this will help you get over it!
SRLStats_Username = ''; // Your SRL Stats Username (Optional) Register here: [url]http://stats.villavu.com/[/url]
SRLStats_Password = '';// Your SRL Stats Password (Optional) Register here: [url]http://stats.villavu.com/[/url]
WhatBoat = 'N';{
Intermediate
Advance
Novice }


i have never had that problem :/

Yeah it's not my script, I may have to talk to the community about this problem hmmm… Also atm I am tweaking/updating the script. By Tomorrow It should be good to be released or maybe even tonight.

Thank You!

Franksyp

2012-05-10 20:09:07

Hey P1nky i appreciate your hard work, for me the script keeps not getting the 500 in time to get any rewards i ran for a while and still 0 rewards. i tried updating the colors but then it just freaked out. i look forward to the next version, maybe the problem will be solved.

P1nky

2012-05-11 03:04:58

I have a update ready to go, but all I need is colors from Intermediate boat :( So I will have to wait for more people to be on Runescape since the boat is not running at all :(.
Also since people have school tomorrow may be a reason of the slow games.

neo arrow pk

2012-05-11 03:27:24



Uploaded with ImageShack.us

This was running the ''I'' script pinky :p, nearly 10 hours!

Thanks!

Tilley661

2012-05-11 10:15:05

Uploaded with ImageShack.us

This was running the ''I'' script pinky , nearly 10 hours!

Thanks!


|| P1nkys PestController ||
||===========================||
|| May 11th, 2012 ||
||===========================||
Worked For 1 Hours, 26 Minutes and 54 Seconds
Games Played 30
||===========================||

Gave this a run, working pretty well at the moment… nice one P1nky, hope ur finals went well

P1nky

2012-05-11 12:07:04

From: neo arrow pk


Uploaded with ImageShack.us

This was running the ''I'' script pinky :p, nearly 10 hours!

Thanks!

Thank you for the wonderful proggie :)

From: Tilley661
|| P1nkys PestController ||
||===========================||
|| May 11th, 2012 ||
||===========================||
Worked For 1 Hours, 26 Minutes and 54 Seconds
Games Played 30
||===========================||

Gave this a run, working pretty well at the moment… nice one P1nky, hope ur finals went well

Thank You! and yes they went great!

dpkrips

2012-05-12 00:27:31

After a couple games it just stops getting back onto the boat.
||===========================||
|| P1nkys PestController ||
||===========================||
|| May 12th, 2012 ||
||===========================||
Worked For 17 Minutes and 5 Seconds
Games Played 6
||===========================||


I have to manually click onto the boat every 10 or so games.

Any idea why? It seems to work perfect for everyone else.

Striken

2012-05-12 00:43:45

From: dpkrips
After a couple games it just stops getting back onto the boat.
||===========================||
|| P1nkys PestController ||
||===========================||
|| May 12th, 2012 ||
||===========================||
Worked For 17 Minutes and 5 Seconds
Games Played 6
||===========================||


I have to manually click onto the boat every 10 or so games.

Any idea why? It seems to work perfect for everyone else.


Clan Vex I think.

P1nky

2012-05-12 01:00:31

I fixed that problem, I need colors of the pest in Intermediate Boat than I shall release the script… Sadly I have time at night times when that boat takes time to get filled -.-

dpkrips

2012-05-12 01:27:23

Ahk, well when the next script comes out you will surely be getting a donation from me! :)

I can see you are putting alot of work into it. I love the script that is out at the moment, except the fact I gotta check up on it every now and then xD

Bakednub

2012-05-12 05:33:44

So whats the most reliable version to run atm? Version I?

UMirinBra?

2012-05-12 08:56:18

Awsome Script!! cheers P1nky.

Also whats that song you have for for this script on youtube? its sick ass song

P1nky

2012-05-12 10:07:25

Updated.

Intermediate boat won't work due to the colors are not updated.

Enjoy!

bslaya

2012-05-12 10:20:07

Doesn't work for me, everytime I start it and leave it, I come back to find it has only played a few more game and is just sitting outside of the boat and cannot seem to find the gangplank, I think if it rotated the camera it would fix this. Clan vex is causing it I believe, as mentioned above. Will try out your new version.

Rezozo

2012-05-12 10:23:45

From: P1nky
Updated.

Intermediate boat won't work due to the colors are not updated.

Enjoy!


:0 , Unfortunately My members account has run out. Anyway, Like the pictures in your sig!

Stray Bullets

2012-05-12 11:16:23

I've played 5 games, been kicked from 4. It gets on the gang plank fine. Problem seems to be detecting pests, and a lot of misclicks. It's very slow to detect the pest, and when it does detect them, it more often than not misclicks them. Twice I ended up just outside the western gate, and it doesn't seem to detect the purple ranger pests at all. Which were all that was visible in that particular location.

unbreakable

2012-05-12 11:20:32

Does this script still have that bull—- saying "We are www.villavu.com" ???

Stray Bullets

2012-05-12 11:28:56

From: unbreakable
Does this script still have that bull—- saying "We are www.villavu.com" ???


Look at the source?

No, it doesn't. None of the versions I tested did though.

IamDom

2012-05-12 17:29:44

First time I tested it it was messing about a lot and stopped working but tried it again and it got me 100 odd points whilst I was out, nice script :)

vlc

2012-05-12 18:18:41

It gets on the boat fine, then runs to the center too.. But it doesn't attack, It puts on prayer and spec then sits there.

captain price

2012-05-12 21:29:51

this got me full void and now i go pking with it thanks

P1nky

2012-05-12 21:47:07

What Boat doesn't work?

Make sure your using the Novice option…

superbuster4

2012-05-12 23:15:06

Cant wait to try it

P1nky

2012-05-13 00:07:27

Proggie:

||===========================||
|| P1nkys PestController ||
||===========================||
|| May 12th, 2012 ||
||===========================||
Worked For 5 Hours, 46 Minutes and 31 Seconds
Games Played 128
||===========================||

JoePaCiNo

2012-05-13 01:22:19

I had the same prob, go to your graphics settings and make sure your screen is set to fixed, and the tab above it is set to min, stop and re-play and voila!

Elgar

2012-05-14 00:09:33

First, i wanna say thank you, i managed to get 600 points today..

Second, im a pure with only 78 str, it's kinda hard sometimes to hit more than 500..since theres some higher bots with me..can you please add those monster around portals..please OR just fix the little problem..it seems like my account doesn't detect the red monster…the green is OK

Thank you and yes my settings are MIN with MAX CPU usage :p

Please reply :) thanks again P1nky

Striken

2012-05-14 00:12:15

Just got Full Void today and I LOVE IT! I thank you so much P1NKY! <3

mid flows

2012-05-14 01:18:43

From: Elgar
First, i wanna say thank you, i managed to get 600 points today..

Second, im a pure with only 78 str, it's kinda hard sometimes to hit more than 500..since theres some higher bots with me..can you please add those monster around portals..please OR just fix the little problem..it seems like my account doesn't detect the red monster…the green is OK

Thank you and yes my settings are MIN with MAX CPU usage :p

Please reply :) thanks again P1nky


When u hit around 80+ str u will manage to win more games and its not easy to code that in there its alot of work give him the credit of making this a free bot man also just keep it going u will i promise win more games im 84 str and im winning 90% of my games tht is unless it stops hitting the red monsters which it usally does cause runescape added a new color to it which u can find the color and enter it in the script fairly simple

atea1234

2012-05-14 08:36:58

Amazing script. No other words needed.

Elgar

2012-05-14 14:57:27

haha thanks man,

i did give him credits, he's so nice to make a pest control bot..i'll have 90 strenght in 2 weeks if he keeps being active..i can't wait! :D

and to say the truth, i tryed to change the colors and searched topics about it and i didn't found one :p if you know something or you know a topic on how to do it, please tell me xD

-Elgar

wakka165

2012-05-15 16:10:26

dang clan vex…. *-*

jack1994

2012-05-17 08:44:31

|| P1nkys PestController ||
||===========================||
|| May 17th, 2012 ||
||===========================||
Worked For 4 Hours, 17 Minutes and 52 Seconds
Games Played 76
||===========================||

kamikamal123

2012-05-17 12:02:50

isnt this suicide to easy to detect if ur a botter

P1nky

2012-05-17 14:25:09

Upcoming update will hopefully satisfy everyone ;)
Almost done!

the denman

2012-05-17 15:41:17

From: P1nky
Upcoming update will hopefully satisfy everyone ;)
Almost done!


Thats great to hear.

one question, the current downloads available are they from old to new or from new to old arranged?

P1nky

2012-05-17 16:01:54

From: the denman
Thats great to hear.

one question, the current downloads available are they from old to new or from new to old arranged?


Old to New, so [A] would be old would be new.

Castiel1

2012-05-17 19:45:35

Hey Pinky, Would you be able to add the option to collect Hybrid Armour, if the screen is seen? If that's possible.. Going to try this out either way :)

360

2012-05-17 20:33:18

|====================================|
| ~ SRL ~ |
| Randoms Report |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
| |
| |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
|====================================|
||===========================||
|| P1nkys PestController ||
||===========================||
|| May 18th, 2012 ||
||===========================||
Worked For 4 Hours, 48 Minutes and 29 Seconds
Games Played 111
||===========================||


but im just wondering, why it only does 1 spec? if i use dds i want to use all 4

Castiel1

2012-05-17 21:30:43

"Warning! You passed wrong values to a finder function: ys > ye <30,29>. Swapping the values for now."

This is spamming up my Command Prompt screen after every game. Not sure what it means :/ However, could someone explain it? I'm interested in this scripting :)

xxgoubxx

2012-05-17 23:00:39

I'm sure you put a lot of efforts into this script but its not working for me. 1st : It never manage to get the 500 points to get the comms, it should repairs barricades instead of fighting. Also, when you die, it doesnt walk back to the void guy. Finally, it attacks very few nps during the game.

Any way to improve this?

Thank you <3

bslaya

2012-05-18 00:52:44

I consistently come back to find the script outside of the boat spam clicking an island to the east in the middle of the ocean and not boarding the gangplank.. so frustrating and disappointing to come home to a 6 hour proggy and find it only gained like 10 pc points.. please fix this

regicide1

2012-05-18 01:22:39

works great for me, would definately reccomend it

Elgar

2012-05-18 05:12:22

Great to hear back from you p1nky! thanks again…i managed to get around 3000 points in 3-4 days…

And it's great to know that you're uptading your bot…since a few days..there's more people using it..and when we're 10 in the same spot attacking the few monsters..i swear to god…it's hard to get 500 damage when you only have 40 attack..rune scimy lol

my stats are 40 attack 83 str 91 range 1 def…and i needed to use dark bow to win atleast 4 games out of 5.. if i was using melee…i would win like maybe 2 games out of 5..but i really wanna train my strenght while getting points…so please if you can, add more npc's…i already love you to death but i just need that<3

Thanks Alot…botting all night 84 strenght tomorrow!!! :D and maybe 90 in a week if the bot has a nice uptade to it.. :D have a nice day..and sorry for this long comment :p

Castiel1

2012-05-18 05:39:58


Here's the error I have (at the top)
and a progress report too.

P1nky

2012-05-18 14:22:39

From: xxgoubxx
I'm sure you put a lot of efforts into this script but its not working for me. 1st : It never manage to get the 500 points to get the comms, it should repairs barricades instead of fighting. Also, when you die, it doesnt walk back to the void guy. Finally, it attacks very few nps during the game.

Any way to improve this?

Thank you <3

Next Update will have the improvements, although the barricade repairing? How do I fix the barricades?
From: regicide1
works great for me, would definately reccomend it

Thanks!
From: Elgar
Great to hear back from you p1nky! thanks again…i managed to get around 3000 points in 3-4 days…

And it's great to know that you're uptading your bot…since a few days..there's more people using it..and when we're 10 in the same spot attacking the few monsters..i swear to god…it's hard to get 500 damage when you only have 40 attack..rune scimy lol

my stats are 40 attack 83 str 91 range 1 def…and i needed to use dark bow to win atleast 4 games out of 5.. if i was using melee…i would win like maybe 2 games out of 5..but i really wanna train my strenght while getting points…so please if you can, add more npc's…i already love you to death but i just need that<3

Thanks Alot…botting all night 84 strenght tomorrow!!! :D and maybe 90 in a week if the bot has a nice uptade to it.. :D have a nice day..and sorry for this long comment :p

Thank You Very Much Mate, next update will support all NPC's and walk around Pest Control.

From: Castiel1

Here's the error I have (at the top)
and a progress report too.


Ignore the error, cause it's a warning message and thanks for the Proggie!

Castiel1

2012-05-18 15:34:04

From: P1nky
Next Update will have the improvements, although the barricade repairing? How do I fix the barricades?

Thanks!


Ignore the error, cause it's a warning message and thanks for the Proggie!


Repair Barricades by cutting down trees (Hatchet in toolbelt would be easiest). Then just click the broken barricades to repair them (it's left click option). If you have logs then it will repair, if not it wont ;P Most people don't bother with it, but it works for skillers (10HP accounts can use PC doing the repair option, if they have other combat stats).


Thanks for letting me know about the error, I just wanted to be sure :) Currently on 10 hours Runtime with SmartManager! :D
Using it to get to around 500 games then I'll do the last few legitimate for Hybrid Boots. Great Script :) Well done, and thanks for making it public :)

regicide1

2012-05-18 15:58:42

Aww i wish i had ss'd my proggie.

Guys i suggest you use "Smart Manager" http://villavu.com/forum/showthread.php?t=76404

It resets the client for you when problems occur/you reach the 6 hours limit.

I left mine on during the day and over night, woke up and its still running strong. Very good script, although the middle spot IS a bit flooded with people, i still win 4/5 games. (Dark Bow)

This script fast and efficient and i also suggest if its not working for you that you change your settings ingame to "Fixed Screen" and "Minimum".

I also "Disable Graphics" just for a bit less cpu usage so i can play LoL while botting haha.

CHEERS! :spot:

Eccentric

2012-05-18 20:09:58

Someone help?

syeeeeed

2012-05-19 03:20:20

The script worked Excellently over night, gained 162k strength xp over 6 hours and played a total of 132 games.

The only thing is that the log in the rs chat box only shows games played and not games won/lost.

cheers

I just noticed but it mainly just attacks the green monsters in the middle, when red monsters spawn it usually does not try and attack them, but if it does it takes long to acquire it.

the denman

2012-05-19 05:41:04

i aswell started to get the error posted 2 posts above me.

Castiel1

2012-05-19 07:06:11

From: Eccentric
Someone help?


From: the denman
i aswell started to get the error posted 2 posts above me.

Try Updating SRL, if the "certer" file has an error, use this code here.

SRL>Check For Updates>wait>Restart Simba
^ How to update SRL.



From: regicide1
Aww i wish i had ss'd my proggie.

Guys i suggest you use "Smart Manager" http://villavu.com/forum/showthread.php?t=76404

It resets the client for you when problems occur/you reach the 6 hours limit.

I left mine on during the day and over night, woke up and its still running strong. Very good script, although the middle spot IS a bit flooded with people, i still win 4/5 games. (Dark Bow)

This script fast and efficient and i also suggest if its not working for you that you change your settings ingame to "Fixed Screen" and "Minimum".

I also "Disable Graphics" just for a bit less cpu usage so i can play LoL while botting haha.

CHEERS! :spot:


I wish I SS'd the 25 hours I just had >_< Brain isn't working this morning!

the denman

2012-05-19 08:08:34

^thankyou it was not a fault in p1nkys script, it was a certer error and ive fixed it now.

Castiel1

2012-05-19 14:33:46

From: the denman
^thankyou it was not a fault in p1nkys script, it was a certer error and ive fixed it now.


You're welcome :) Just wanted to clear it up, and help the community out =P hehe.

P1nky, thank you so much, claimed my Trickster boots today :) just need another 5! :D

syeeeeed

2012-05-19 16:23:50

Is anyone else having problems where it attacks mainly the green monsters at the center but rarely attacks the red monsters?

the denman

2012-05-19 17:56:59

From: syeeeeed
Is anyone else having problems where it attacks mainly the green monsters at the center but rarely attacks the red monsters?


The current version does not support all NPC's but p1nky said very shortly he will release an update wich does support every NPC

eric v1

2012-05-19 22:18:15

im srry but this bot is crap barely any monsters by void knight and i nv get any points after a game

Mandals

2012-05-19 23:08:14

Hey, when im at the gangplank, my character keeps clicking at the water, not the plank. please halp.

mid flows

2012-05-19 23:24:19

May i ask why it screenshots my ip log everytime it loads???? im kidna leary about that using this script when its crypted and taking screenshots of my ip address………….

Gucci

2012-05-20 01:33:26

From: mid flows
May i ask why it screenshots my ip log everytime it loads???? im kidna leary about that using this script when its crypted and taking screenshots of my ip address………….


So if you get hacked or something it'll save the IP as a log so you can access it to see the IP address. If you don't trust the program don't use it.

TrueExpressions

2012-05-20 03:44:53

Hey P1nky I've been very eager to use your script and I've heard some good reviews about you :P
Just curious if you got it to attack portals yet?

TrueExpressions

2012-05-20 04:12:00

Could you make it walk back to middle if it wanders off chasing a shifter?
The shifter teleported by a portal and it chased it and got stuck there.

bslaya

2012-05-20 08:50:36

Somedays this script works flawlessly for me, other days it fails to board the gangplank.. I have no idea what is going on as it does not seem to be a fluke but rather happens in lengthy time periods. It used to click out in the water but now it seems to just be hovering around the gangplank unable to find it. Very weird because no matter what world I choose or if I restart the client, it will still fail to board to the boat after a few games, however the very next day I could start it and it will run for 6 hours straight. By rotating the camera slightly it will find the gangplank and click.

deathcare666

2012-05-20 10:44:33

Im having a problem, the script fuctuates and was working for 5 hours and then now its just sitting in the boat (the game) idle closing after 2 minutes

TrueExpressions

2012-05-20 12:18:53

Glad to say this script gets the job done :D!
5 plus hour proggies over 200 points ftw fast easy and neat thank you very much P1nky

Ketan

2012-05-20 13:01:38

I was doing veteran (advance) one and usually when entering the boat, it spam clicks the plank thing and it gets back to the top and hence doesn't do the round -.-

lxlifestream

2012-05-20 13:23:12

this script along with others just don't wanna work on my computer.
I set up simba on 3 different computers (2 were for friends) and scripts run perfect for them. But on my computer it doesn't like running/walking. And in this game it runes past the center like down the steps to the gate and thats it. Just likes to stand there….. For for my friend it goes to the center and attacks all the time

lxlifestream

2012-05-21 02:42:48

I must have terrible luck.
I've set this script up for 2 people and they have no problems.

But i've tried this on two of my own computers and it wants to run to the center, then run down through the gate and there of course there are no enemies to attack so nothing happens.

Like what is causing this, i wish there were comments in this script so i knew which colors to change because i'm personally thinking its a color code issue. or something.

It is very very frustrating…….. i hope someone would reply sooner…..

Kraze

2012-05-21 19:21:15

This script was working for me yesterday, but today it doesn't seem to want to click the plank… I'm not sure why, but every time it wants to click the plank, comes up with an error and starts spam clicking the water.

lightstabo

2012-05-21 20:06:06

I am also getting that

P1nky

2012-05-22 16:11:38

Mates I am having trouble to find all pests, since it now runs around whole island, so please bare with me thanks.

resurrected

2012-05-22 16:14:31

No worries man. This script has gotten my pure up to 73 ranged so far, keep up the great work with it.

young richard

2012-05-22 19:11:30

p1nky, when can we expect the soulwars script??

Ironik

2012-05-22 19:55:39

|====================================|
| ~ SRL ~ |
| Ironiks Report |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
| |
| |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
|====================================|
||===========================||
|| P1nkys PestController ||
||===========================||
|| May 22nd, 2012 ||
||===========================||
Worked For 3 Hours, 56 Minutes and 16 Seconds
Games Played 81
||===========================||

Bot4Fun

2012-05-23 13:04:50

Hey mate!
Nice script.
Can i ask how much exp/hour for someone with about lvl 65 in att, str. and def?

EDIT: And another question, it says: //NOTE: INTERMEDIATE HAS NO COLORS FOR PEST. (Wont work).
So the interdimate nuveau wont work?? or??
Which one should i choose then?

Lepetin

2012-05-24 05:40:44

Blah got 50 points inn one night.

dutchpower

2012-05-24 06:26:31

its already running for 3 and half hour and it works great! the xp a hour for combat is not that good but yhea the tokens are nice~!

KastroGjerj

2012-05-24 12:17:10

For some reason… my bot keeps going to the intermediate bot and crashing… before I got 6 hours proggies but now I can't even go over 1hour

KastroGjerj

2012-05-24 21:10:57

is it possible to add 2 special attack's instead of just the one that it does

Recursive

2012-05-24 21:21:33

P1nky, In your script, I saw the functions for ingame and inboat. Can you explain how those work? Is the bot looking for a specific item/npc in those 2 functions or an object? Please reply, I will also send you a pm. if so what is it looking to find in the 2 functions. Call it by the name ingame

~*Chig*~

faith2248

2012-05-25 10:43:37

i kinda like this script….it keeps ur player in the center defending the void knight….u shud keep it that way….

though…..only the novice boat works….

intermediate and veteran dont work…would be nice if u cud get verteran to work…intermediate is useless =d

kuiper

2012-05-26 10:10:48

||===========================||
|| P1nkys PestController ||
||===========================||
|| May 26th, 2012 ||
||===========================||
Worked For 8 Hours, 26 Minutes and 57 Seconds
Games Played 188
||===========================||

juunhoad

2012-05-26 10:24:12

So auto retaliate needs to be off?

FuruChan

2012-05-26 11:22:41

|====================================|
| ~ SRL ~ |
| Randoms Report |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
| |
| |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
|====================================|
||===========================||
|| P1nkys PestController ||
||===========================||
|| May 26th, 2012 ||
||===========================||
Worked For 6 Hours, 2 Minutes and 6 Seconds
Games Played 130
||===========================||

Kicks some ass.

Darcy_Oner

2012-05-27 19:40:26

It plays 1 game and then doesnt go back into the boat, it just stands there.

990chillin

2012-05-27 23:03:46

keeps runnin past the center thing and then just sits there not doin anything for the whole game, i just went 5 games without atking anything, had to turn auto retaliate on just to get 500 damage, from random things atkin me, it wont atk anything at all, must be broke

Kraze

2012-05-27 23:17:19

Not broken AT ALL. I have been using this script for 2 days now, I have gotten 1 full set of Void and I'm now 150 commendations into my second. Awesome script.

bigboy63

2012-05-28 03:29:27

found solution to my problem^^ thanks

mayx

2012-05-28 15:50:01

Works perfectly for me! Doing about 24 games per hour.
Can't wait till you can add portals and other npc's :).

~Mayx

Abusch2013

2012-05-29 00:41:46

Okay pinky you didnt fail me for 99 WC time to try and get from 95 def to 99 off PC via you :P

Goscek

2012-05-29 08:37:18

From: faith2248
i kinda like this script….it keeps ur player in the center defending the void knight….u shud keep it that way….

though…..only the novice boat works….

intermediate and veteran dont work…would be nice if u cud get verteran to work…intermediate is useless =d


Seriously? No.

First off I applaud P1nky for this easy to use script. He's obviously put a fair amount of work into this, and it works great! I've had very little problems at all.

As for this comment.. just.. really? You shouldn't keep it that way at all. As P1inky's script becomes more popular (and add in account that other scripts may do the same thing) It'll end up where you will not get an easy 500 points per game, as most people will do the same as you.

I think P1nky's idea on further development is a great idea, and a better chance for you all to have an easy 500. Cheers for the great work man, keep it up.

Dallas_Colts

2012-05-29 11:32:59

hmmmm doesnt seem to work for me :/

Stanger

2012-05-29 13:57:59

Why on earth is my proggy ingame flashing?

Stanger

2012-05-29 15:30:42

Is there btw an anti leech on it?

P1nky

2012-05-29 15:32:07

no anti leech, still working on thsi script mate.
Sorry for it taking too much time!

Stanger

2012-05-29 16:19:56

Why are so much things after //

admiralpwn2

2012-05-29 18:44:43

|====================================|
||===========================||
|| P1nkys PestController ||
||===========================||
|| May 29th, 2012 ||
||===========================||
Worked For 5 Hours, 18 Minutes and 36 Seconds
Games Played 109
||===========================||

XboxDubstep

2012-05-29 19:23:48

Pinky the veteran boat doesn't seem to work, it seems to misclick and get confused with the void knight there. Just trying to help out :) i love you script!

danielOATH

2012-05-30 08:29:29

Sorry for being a mad leecher.. This is what's coming up when I try running it. Care to guide me?

SRL Compiled in 0 msec
SMART Initialized.
Loaded: Server 17, Members: False, Signed: True, Super Detail: False.
Error: Exception: Access violation at line 101
The following DTMs were not freed: [SRL - Lamp bitmap, 1]
The following bitmaps were not freed: [SRL - Mod bitmap, SRL - Admin bitmap, SRL - Flag bitmap]

thatoneguy

2012-05-30 15:03:16

I think the Advanced boat would work better if the camera stayed facing north on the docks; the camera always faces west and then has trouble finding the plank since everyone's standing in front of it. At the novice boat the camera's pointed so that there's a clear view of the plank.

Novice works well, and Advanced does work, but might need some babysitting.

pure ftw52

2012-05-30 17:02:58

hmm me likey this srl :D does good and runs also good i will post a progie if long time done.

kazzos

2012-05-31 01:35:47

been running novice boat flawlessly with 6 hour proggies. I get around 200 commendations every 6 hours on my lvl 58 pure.

Deni_mulic

2012-05-31 08:24:45

From: danielOATH
Sorry for being a mad leecher.. This is what's coming up when I try running it. Care to guide me?

SRL Compiled in 0 msec
SMART Initialized.
Loaded: Server 17, Members: False, Signed: True, Super Detail: False.
Error: Exception: Access violation at line 101
The following DTMs were not freed: [SRL - Lamp bitmap, 1]
The following bitmaps were not freed: [SRL - Mod bitmap, SRL - Admin bitmap, SRL - Flag bitmap]


Load runescape in chrome - if it tells you to install Java do it.

Snubway

2012-06-01 18:12:15

Got like 240 comms yesterday, probably like 5 hours straight.

then today, I've tried running & restarting it 32 times and it runs to the midlde and clicks the same spot on the map above the first door and gets stuck.

I have not changed anything, at all.

Inita_Waxin

2012-06-02 02:15:04

there will be times where it just gets stuck and stands still and doesn't click anything. do you have any failsafe for that?

starrychelx

2012-06-02 16:13:33

Sometimes the script takes ages to enter the boat, like it runs it's mouse through the gangplank and after sometime it finally presses it. While in the pest control sometimes it may not get the 500 as the bot would just stand and do nothing. Any solutions plz :)

tidustidus

2012-06-05 06:59:42

brilliant job P1nky, ran it for 10 hours last night. but I do have a few problems you'd like to know i'm sure…

1. When first arriving at the void knight, and the script clicks on a shifter, then that shifter teleports towards a portal (following one of the players heading that way) then my character will be dragged to somewhere other than the knight.

2. Not sure why, but it logged out by the plank, I'm guessing because it couldn't find it. maybe if it looked a bit longer.

3. It logged out at 250 commendations (I thought 500 was the max cap?)

other than that, best script i've used in a very long time :)

Carizma

2012-06-05 08:26:19

It is kinda slow, Like it pauses for a while when everything is around you but its still okay but could use some work(: Thanks for letting others test :D

Krimbo

2012-06-05 12:49:52

I'm hoping to use this for training my combat up, how much XPph roughly would I be looking at using this? It was on a combat script list so though I'd ask.
Cheers.

tidustidus

2012-06-05 13:20:46

Hey Krimbo, In melee, i'd think you'd get about anywhere from 20-40k per hour xp.. depending on levels, lower the level the less xp per hour.

ManesSexi

2012-06-05 13:25:09

Cant even use script
when I log in I dc straight away…

r0xy

2012-06-05 13:40:52

I was very excited to use this bot when i found it, due to all the views/reply's this thread had received. Then i went to run it, first game great. Then i stood on the dock's for 10 minutes in between every game after that. Also failed to get my zeal, due to lack of combat. There for i will personally be putting this script on hold. I believe this script has a lot of potential, i would love to be able to use it, but i cba to stand on the docks 3/5 hours that i run it. I believe this should be a quick fix. Not sure why it hasn't been, but either way, for being free great script, just needs updated! If you know when you plan to update this minor problems, a date would be great, as i will be sure to use it the day you update :D. Hope you didn't get to offended by the above statements.

tidustidus

2012-06-06 02:34:52

Hey R0xy.
Make sure you have your graphics set to lowest, and resoloution to FIXED…

Update Simba … Tools> Update

SPS SRL and MSI… update them all too.

For me this script is flawless, only quits when runescape times out, which is every 12 hours it seems. It's likely to be at your end not the scripts. hope I helped.

syeeeeed

2012-06-06 04:41:57

From: tidustidus
Hey R0xy.
Make sure you have your graphics set to lowest, and resoloution to FIXED…

Update Simba … Tools> Update

SPS SRL and MSI… update them all too.

For me this script is flawless, only quits when runescape times out, which is every 12 hours it seems. It's likely to be at your end not the scripts. hope I helped.


RS timeout is around the 6 hour mark. There is a simple override to this which will enable your script to run for however long you want. Here's the link where you can download the client

http://villavu.com/forum/showthread.php?t=76404

melee

2012-06-06 13:19:54

This script is amazing. Thankyou so much. I have been using it for over a month and have gotten 80-98 strength woooot 3000 more points for 99 strength. Thankyou so much i gave rep

Lil G

2012-06-06 14:04:03

Been working pretty well for me, thank you :)

bishknight

2012-06-06 14:08:32

It's a really great script, got a set of void with melee and range helms, thanks! I'll look forward to when portals are released, it would give the script a lot more variety

Thanatos

2012-06-06 14:54:36

Does this script get a good amount of xp per hour when fighting? Or is it just meant purely for getting the void armors?

tidustidus

2012-06-07 02:27:20

I get about 12k xp per hour from fighting and 50 points per hour.

Total: 12,000xp 50points/per hour


only problem i've come across using this script is random events.

Gushers

2012-06-07 04:35:20

Hey P1nky amazing script, I used to use this script about 5 months ago before it went to only SRL memebers. But now that it's back I plan on using it! My only problem would be that when it gets off the boat on the map it doesn't go to the center it goes off and is on the ground where it's not standing on the "fight zone" know how I can fix this?

tidustidus

2012-06-07 06:55:32

Same problem Gushers, I'm pretty sure it's on p1nky's to do list. if you look back at one of my previous post, I explain what may be the cause of the problem.

evilswords0

2012-06-08 03:20:51

thanks for the great script

mrloveskating

2012-06-10 16:48:14

This script doesnt work it stops working after two games and just stands there …. -.-

tidustidus

2012-06-10 19:00:56

This script works perfectly, there is something wrong your side… try these…

- Turn down your graphic settings to lowest, and resolution to FIXED
- Update MSI SPS and SPL
- Update client Tools>Update

Cyfer

2012-06-13 08:11:27

Really buggy on advanced, great on novice thanks!

Guys would you recommend sticking to novice since advanced is so buggy?

tidustidus

2012-06-13 15:35:12

Hey mate, I use Novice with little to no problems, it runs hours at a time, and even longer with SMART manager… I leave it on overnight and get 300-500 points.

I've never tried advanced so why don't you post the "bugs" here so P1nky knows what's wrong with it. And yeah I recommend Novice :)


Almost 99 range with this script.

faith2248

2012-06-13 19:43:31

is there a sw script that works around?

n00b? n00b?

2012-06-13 19:47:26

From: faith2248
is there a sw script that works around?


I think you may have misread the thread title.

faith2248

2012-06-13 22:15:50

i mean is there a sw script that is working for simba in general? i cant seem to find any

deffailed

2012-06-14 07:13:55

Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now. HElp pls!!!

Cyfer

2012-06-14 09:36:22

From: tidustidus
Hey mate, I use Novice with little to no problems, it runs hours at a time, and even longer with SMART manager… I leave it on overnight and get 300-500 points.

I've never tried advanced so why don't you post the "bugs" here so P1nky knows what's wrong with it. And yeah I recommend Novice :)


Almost 99 range with this script.


Bugs include:
1) Not being able to click on the plank to get into the boat - it clicks on the sea beyond the boat. As someone else had pointed out, would it be possible so the camera and clicking actions for getting into the boat are the same for Advance as they are for Novice? This would literally make Advance flawless.
2) Sometimes just going crazy and not getting enough points since it just runs around

But mainly it is the former problem.

Currently at 357 points only 500 left!

EDIT: Surely there must be someone in this thread apart from Pinky who can do the swap around…. I will try myself but don't expect anything at all :P

Cyfer

2012-06-14 11:35:06

From: Cyfer
Bugs include:
1) Not being able to click on the plank to get into the boat - it clicks on the sea beyond the boat. As someone else had pointed out, would it be possible so the camera and clicking actions for getting into the boat are the same for Advance as they are for Novice? This would literally make Advance flawless.
2) Sometimes just going crazy and not getting enough points since it just runs around

But mainly it is the former problem.

Currently at 357 points only 500 left!

EDIT: Surely there must be someone in this thread apart from Pinky who can do the swap around…. I will try myself but don't expect anything at all :P



I've deleted the plank command for Advance and just put Advance to use the same plank searching commands as Novice and Inter and it seems to be working.

Thanks again for the great script Pinky!


>No this didn't take me the 2hrs between posts :P

EDIT: Now not enough of the red shifters are coming so I'm not getting enough zeal in the Advance games to get points D:
EDIT2: Not attacking any shifters now. Back to novice I guess.

yvan49

2012-06-16 19:21:56

Ive been using this program for 1 week now and got over a 1000 points. I've been fooling around with the code because it didnt pick up all the shifters. I've tried to fix the advanced planks but ever so often it will accidently click the intermediate plank. But this is a brilliant script that you created.

imnewhere

2012-06-16 20:45:23

how do I use your bot and not the MSI ones?

keutel

2012-06-17 08:59:17

dude fix the advanced one, it only detects like 1 deflector or whatever they r called….

deffailed

2012-06-18 18:58:42

Still working but its rly buggy :/ Good script!

bricks

2012-06-19 08:35:25

Not working for me currently, starts up but then when it goes to log in..it logs in and then a split second later it loggs back out and doesn't even enter a world.

Deus

2012-06-19 08:39:07

From: bricks
Not working for me currently, starts up but then when it goes to log in..it logs in and then a split second later it loggs back out and doesn't even enter a world.


RS was just updated, this is a problem with the game, not this script.

Should be fixed soon.

jimmyalcota

2012-06-19 13:43:54

I will have to try this later, I'd love for the advanced to work, but novice is good if it gets 300+ points a night as mentioned.

gremlinray

2012-06-23 04:30:01

What was the solution?

Rincewind

2012-06-23 17:13:16

The script works really good. Will post a progress soon. yeeeeeeah!

lured yah

2012-06-24 16:01:14

After entering the boat it keeps spamclicking on special attack untill it attacks an NPC.

Besides that, good script :)

quazzymodem

2012-06-26 01:56:36

I was wondering if there are plans to implement the ToRed method or the creation of other walk to portal methods?

P1nky

2012-06-26 18:17:47

Updated to [M], I would like to call this the Beta stage of running around PestControl finding Pests.

Also Special thanks to Runaway to giving me a boost.

Sorry for the wait mates, may be a bit buggy but I wanted to just throw it out there to let y'all know I am still alive and won't give up. Also sorry I have been quite busy with real life (partying) ;).

Post bugs/proggies thanks.

realrocker00

2012-06-26 20:19:37

working better then ever! Party on! :spot:

tidustidus

2012-06-27 02:23:22

Sorry for the double post.

Thanks for keeping this script up to date, It has helped me on my way to 99 range, and now helping me on my way to 99 strength.

I'm not a scripter, but I can slightly understand scripts, but thanks for making it public!

Below post… too much? :<

tidustidus

2012-06-27 02:56:19

I'm going to nip pick at the negatives for this script, so you can make it the best you can.

Here are my problems with it;
A bit slow attacking monsters. (Occasional)
Movement is short patterned, kind of making it obvious as a bot. (Not often)

When it dies, it repeatedly clicks on the beach next to the boat. (After 1 minute it moves back to defend.
Doesn't finish killing mobs before attacking another mob. (Prioritize colours?) (often)

Could attack portals? :>
Doesn't attack all pests (often)

Script terminates when pest control shoes are available.

All these combined has more often than before lose games

At one point it attacked 3 splatters simultaneously and killed itself, lol.


May I suggest having the script move to the area just out of the south gates (where torchers/defilers pile up) as Zeal would be abundant here, perhaps alternating between the two spots, at the Void Knight, and outside the south gates.

|====================================|
| ~ SRL ~ |
| Randoms Report |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
| |
| |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
|====================================|
||===========================||
|| P1nkys PestController ||
||===========================||
|| June 27th, 2012 ||
||===========================||
Worked For 29 Minutes and 17 Seconds
Games Played 11
||===========================||

P1nky

2012-06-27 05:30:35

From: tidustidus
I'm going to nip pick at the negatives for this script, so you can make it the best you can.

Here are my problems with it;
A bit slow attacking monsters. (Occasional)
Movement is short patterned, kind of making it obvious as a bot. (Not often)

When it dies, it repeatedly clicks on the beach next to the boat. (After 1 minute it moves back to defend.
Doesn't finish killing mobs before attacking another mob. (Prioritize colours?) (often)

Could attack portals? :>
Doesn't attack all pests (often)

Script terminates when pest control shoes are available.

All these combined has more often than before lose games

At one point it attacked 3 splatters simultaneously and killed itself, lol.


May I suggest having the script move to the area just out of the south gates (where torchers/defilers pile up) as Zeal would be abundant here, perhaps alternating between the two spots, at the Void Knight, and outside the south gates.

|====================================|
| ~ SRL ~ |
| Randoms Report |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
| |
| |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
|====================================|
||===========================||
|| P1nkys PestController ||
||===========================||
|| June 27th, 2012 ||
||===========================||
Worked For 29 Minutes and 17 Seconds
Games Played 11
||===========================||

Thank You for the feedback, I will surely update this script by taking this post under consideration.

I am aware of many of these problems such as the 1 usual route/not much of a randomized bot atm.

I will fix it up next update.
Thanks!

bricks

2012-06-27 11:03:56

I like the new update, but can you please explain how i can make my character left click for faster kiling rather than right click everything? Also, are they're any tweaks for making detection for the pests faster?

lightstabo

2012-06-27 11:44:28

I'm not sure if this has been covered but there is a bug where after getting into the game, it clicks near the void in the centre on the minimap, then clicks the tower on the minimap and just runs past the dude in the centre

Runaway

2012-06-27 11:55:41

From: tidustidus
I'm going to nip pick at the negatives for this script, so you can make it the best you can.

Doesn't finish killing mobs before attacking another mob. (Prioritize colours?) (often)


@P1nky, I took a look through the code after you uploaded and I was going to mention this but he beat me to it :p

For WaitFight(), the MinWait setting is really important. If you set it too low, the script will think that it's not in a fight. I believe you've set it to WaitFight(1000, 5000); I recommend you put the MinWait up to around 3500 or so. Basically what it does is waits the MinWait (Up to the MaxWait amount) amount of time for the xp bar to change. If you've got it set to 1000, the xp bar might change after 1000 ms right when first attacking, but after that it will not see a change after 1000 ms and exit WaitFight().

So, if there's a problem with waiting for a fight to be over even after setting it to WaitFight(3500, 5000), just try upping each to WaitFight(4500, 6000) or so. The higher the MaxWait, the longer it will wait until attacking the next found pest, but at least it will make things more reliable :)

bricks

2012-06-27 15:10:31

From: Runaway
@P1nky, I took a look through the code after you uploaded and I was going to mention this but he beat me to it :p

For WaitFight(), the MinWait setting is really important. If you set it too low, the script will think that it's not in a fight. I believe you've set it to WaitFight(1000, 5000); I recommend you put the MinWait up to around 3500 or so. Basically what it does is waits the MinWait (Up to the MaxWait amount) amount of time for the xp bar to change. If you've got it set to 1000, the xp bar might change after 1000 ms right when first attacking, but after that it will not see a change after 1000 ms and exit WaitFight().

So, if there's a problem with waiting for a fight to be over even after setting it to WaitFight(3500, 5000), just try upping each to WaitFight(4500, 6000) or so. The higher the MaxWait, the longer it will wait until attacking the next found pest, but at least it will make things more reliable :)

appreciate this thank you !


EDIT: [M] works decently, although I am currently using [L] because it is more productive for me, it protects knight and also gets more damage points. On [M] the method of clicking the shifters and other monsters is slow, and sometime the script will make you run back to the boat guy, meaning the script thinks the boat guy is a monster.
Also how can i edit it on [L] to were if he goes on the steps or far away from the void he can flag his way back to defend?

P1nky

2012-06-29 14:16:44

Thanks Runaway :) I am working on it atm :)

quazzymodem

2012-06-30 04:01:14

Occasionally I get this error where the script tries to go to the next character (it just uses the same player info) and then it clicks on one of the banned on the lobby page which in tern creates like a million tabs open in my browser. Its not too big of an issue but occasionally I end up using about 10gb more ram than normal ahaha

bricks

2012-06-30 08:28:45

From: quazzymodem
Occasionally I get this error where the script tries to go to the next character (it just uses the same player info) and then it clicks on one of the banned on the lobby page which in tern creates like a million tabs open in my browser. Its not too big of an issue but occasionally I end up using about 10gb more ram than normal ahaha



I also have this bug, :/

Sir Metallica

2012-06-30 17:29:28

I can't open the download?

Sir Metallica

2012-06-30 17:44:29

I can't figure out how to download this. I'm new to this whole thing. Someone help me out?

Sir Metallica

2012-06-30 18:29:09

Sorry I keep posting, this site is kind of confusing. I got the bot to download, but can't figure out how to run it? It keeps saying that there is an exception in the script.

tidustidus

2012-07-01 06:39:17

Metallica… Use "EDIT" instead of triple posting… Follow this tutorial until about 2:10…

http://www.youtube.com/watch?v=w8AOMJ7voPk

Once you've done that, download this script, double click the script, look through the script and you'll notice…. near the top

procedure DeclarePlayerz;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ' '; //Your Runescape username
Players[0].Pass := ' '; //Your Runescape password
Players[0].Active := True; //Set to true if you want to use this player. Set to False to disable this player.
Players[0].Pin := ''; //Leave blank if the player doesn't have a Bank PIN.
end;

Put your username and passwords here like so
Players[0].Name := 'Villavu'; //Your Runescape username
Players[0].Pass := 'Password'; //Your Runescape password

hunters

2012-07-01 10:45:27

works good then about 20 games in it stops clicking the plank to go into the boat.

Rincewind

2012-07-01 23:05:57

I noticed it attacks the Splatters. Are they supposed to be attacked?

sammgill

2012-07-02 11:38:18

What are the IJKLM? Im prolly' derpin

Ashihtaka

2012-07-02 17:00:52

From: sammgill
What are the IJKLM? Im prolly' derpin


Versions of the script,
just download the last one (latest)

High on dmt

2012-07-02 17:03:17

…..

P1nky

2012-07-03 06:03:34

Updating atm, please be patient Mates, it's summer I am chilling a tad too much :)

tidustidus

2012-07-03 06:37:14

keep up the good work P1nky

badkid

2012-07-03 15:49:23

its pretty good and i have no problem with the bot attacking splatters because it gives a really easy hit count but it will suicide itself and stand next to the knight by the boat until the game ends :/

OphielasRage

2012-07-03 19:31:57

Nice script p1nkey im using it on one of my lower level accounts and i see a couple of higher level people using this sscript and they steal all of the monsters (btw im using L) They K.O. the monsters and i only get a few hits in lol Anyway great script! Hopefully soon you can get the portal attacker and monster killer up and running :) Keep up the good work

tidustidus

2012-07-04 02:37:39

Hehe, Guilty Ophelia. This thing doesn't attack the red shifters, so, allowing this will help with ophiela's problem.

P1nky

2012-07-04 02:41:09

Mates the current version is kinda buggy, please give me few more days :)

Sorry!

badkid

2012-07-05 11:31:53

just a few things i noticed, it has a problem with people wearing dragon armor, i think it thinks they are red shifters or maybe even torcher wings

also it would mess up by clicking the plank too many times so it would click the ladder once it got in the boat, causing it to go back out and freeze there

tidustidus

2012-07-05 13:52:01

I've never had this problem

"also it would mess up by clicking the plank too many times so it would click the ladder once it got in the boat, causing it to go back out and freeze there"

But I can understand the dragon armor thing. I doubt that's really fixable unless P1nky changes the reds to other colours. You can start by posting suggestions and replacement colours :)

bricks

2012-07-05 14:14:41

Pinky, can you please tell me where in the code i can edit in order to stop the script from when attacking targets it will hover over skills as if an anti ban if present even though i already edited that out. I just want it to constantly be looking for targets and the plank,if not in game, rather than hovering over skills and slowing things down.

Silentcore

2012-07-05 14:17:17

P1nky Your the best..I haven't used the script but I dont need to use it to find out that your the best…lol..

tankerzz

2012-07-06 07:42:35

Can someone tell me the differences between the letters?

OphielasRage

2012-07-06 12:12:51

the letters are different versions of the script

Nasus

2012-07-07 02:05:38

Was using Version L, some minor graphical issues with the paint which I solved by commenting it out. Out of twenty games, I've had to intervene once to ensure I reached 500 damage dealt, and missed it once; in none of the lost games (Advanced lander) was I below 500 damage dealt. Will sometimes wander away from the middle and get lost, but it does continue attacking things, so that doesn't scream 'bot!'

Rather good script, actually. Gave the +1 Rep, and recommend other folks do as well.

solarit

2012-07-07 14:50:09

im outside the high lvl boat but it goes to the medium one where nobody is and it never plays any game….wtf?

solarit

2012-07-07 16:04:38

hey , are u still supporting this script ? got some flaws u should fix :
1. too slow plank crossing, sometimes you have to wait a game in the boat because u didn't get in with the team (on private worlds) so that should get fixed
2.keeps randomly rotating screen wich seems very suspicious, stop doing it so often
3. misses attacking a lot of creatures making it miss the points and sometimes it doesn't get 500 so you dont get rewarded….will you fix those? thanks also tell us what is the difference between your scripts? they have I J K L etc. what is the difference? wich is best for advanced boat? ty

note: woud like to add that the script only plays like 10 games per hour for me due to not getting in the main team of the boat so i play one game and one it waits outside…this is crappy…do u have any recommandations for this?

badkid

2012-07-07 20:10:55

hey p1nky i would recommend changing the makecompass() to North for advanced, in my little bit of testing it was more effective than the previous direction

tidustidus

2012-07-08 09:31:32

From: solarit
hey , are u still supporting this script ? got some flaws u should fix :
1. too slow plank crossing, sometimes you have to wait a game in the boat because u didn't get in with the team (on private worlds) so that should get fixed
2.keeps randomly rotating screen wich seems very suspicious, stop doing it so often
3. misses attacking a lot of creatures making it miss the points and sometimes it doesn't get 500 so you dont get rewarded….will you fix those? thanks also tell us what is the difference between your scripts? they have I J K L etc. what is the difference? wich is best for advanced boat? ty

note: woud like to add that the script only plays like 10 games per hour for me due to not getting in the main team of the boat so i play one game and one it waits outside…this is crappy…do u have any recommandations for this?



P1nky is aware of the problems you have mentioned, as the 10 hours per game, that is very low, I have run this script and near enough get 24-26 games per hours EVERYTIME.

What version are you using?

Use world 53.

I suggest EVERYONE uses version L at this time. It's the least buggy and most productive.


From: solarit
im outside the high lvl boat but it goes to the medium one where nobody is and it never plays any game….wtf?


This script only goes novice and intermediate boats.

badkid

2012-07-08 10:45:29

From: tidustidus
This script only goes novice and intermediate boats.


I ran it on advanced, a lot

Aalis

2012-07-09 14:33:35

I'm really new to coding and things of the nature, and I have a question. Every time I try to put my username in it says "[Error] (33:22): Unknown identifier 'my username' at line 32
Compiling failed." And if I don't put my info in and just run it, it doesn't do anything at all. Any help at all would be nice.

tidustidus

2012-07-09 19:23:47

Aalis…Follow this video first: http://www.youtube.com/watch?v=w8AOMJ7voPk

- Turn down your graphic settings to lowest, and resolution to FIXED
- Update MSI SPS and SPL
- Update client Tools>Update

Senesence

2012-07-10 14:57:09

the script is a little too slow.. :( most of the time by the time it clicks on a monster it already died at least in the normal boat.. it looks like the character is just afk

Senesence

2012-07-10 15:08:22

It also tries to attack the squire near the boat mistaking it to be a monster

tidustidus

2012-07-10 16:46:34

Use a previous version of the script.

Krazy7

2012-07-11 06:36:42

The script makes way too many clicks, when crossing the plank it makes many clicks, sometimes causing the character to enter and then immediately exit the boat without the script realizing and then you just stand there.
Doesn't open gates.
Again, too many clicks, when fighting monsters it keeps re-attacking them sometimes causing your character to stop attacking for a few seconds causing you not to get enough points in the battle and you don't gain void points.

bricks

2012-07-11 08:20:53

An update happened and now it will not even log in, says welcome to runescape and then does nothing, as well as whenh i start it next to the boat it says setting up smart even though it's all already ready.

solarit

2012-07-11 10:45:36

somehow a bar of Home Support Forums and Clans appears on top of runescape miniwindow while i bot and makes it decay by a few centimeters , no script is working …anyone got a ideea? http://tinypic.com/view.php?pic=14oa8ow&s=6

badkid

2012-07-11 12:39:59

its a problem with smart in general not any individual script

solarit

2012-07-11 13:58:24

any ideea what it is to be done to fix it?

Caotom

2012-07-12 13:31:41

From: solarit
any ideea what it is to be done to fix it?


See the official thread about the issue http://villavu.com/forum/showthread.php?p=1067736#post1067736

~Caotom

lucaschimi

2012-07-12 22:00:18

plz update this bot

pwnedchoo

2012-07-24 05:19:13

"Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now."
any idea i can do to fix this?

Peanuts

2012-08-11 11:47:24

From: lucaschimi
plz update this bot


AGREEEEEEeeeed.

The rev75

2012-08-21 08:07:59

This is happening to me and i dont know why i am new to this site and it dont let me use any of the bots i try…

[Hint] C:\Simba\Includes\SRL/SRL/core/antirandoms\randomtool.simba(215:3): Variable 'T' never used at line 214
[Error] C:\Simba\Includes\SRL/SRL/misc/paintsmart.simba(42:33): Unknown identifier 'SmartGetDebugDC' at line 41
Compiling failed.

then this…

[Error] C:\Simba\Includes\SRL\SRL\misc\paintsmart.simba(154:25): Unknown identifier 'MSBox' at line 153
Compiling failed.

and then this….

[Error] C:\Simba\Includes\SRL\SRL\misc\paintsmart.simba(527:16): Unknown identifier 'MSX1' at line 526
Compiling failed.

rad russian

2012-08-24 16:37:55

jesus christ pinky fix the script ugh…

Solar

2012-08-24 16:42:15

From: rad russian
jesus christ pinky fix the script ugh…


Or you could fix it yourself. What gives you the right to order him to fix his own script?

adamsk8s

2012-08-25 16:11:25

From: Solar
Or you could fix it yourself. What gives you the right to order him to fix his own script?


i have done just that and im releasing it as a temp fix untill pinky comes back..

just take ur char to the boat plank and start the bot. it will do the rest

adamsk8s

2012-08-25 16:16:12

|====================================|
| ~ SRL ~ |
| Randoms Report |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
| |
| |
|&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;|
|====================================|
||===========================||
|| P1nkys PestController ||
||===========================||
|| August 25th, 2012 ||
||===========================||
Worked For 1 Hours, 18 Minutes and 53 Seconds
Games Played 31
||===========================||

Albi

2012-08-26 11:23:28

Fixed for anyone wanting this:

http://puu.sh/Z0Tz

lolskilla

2012-08-27 00:28:53

thanks albi, will run later tonight. what does the script do when a random occurs that it cannot solve?

Rasmus3

2012-08-27 05:06:58

Hey, i am having trouble uploading this. I keep getting 'Canvas.Handle := SmartGetDebugDC;' Please help me, thanks :)

lolskilla

2012-09-01 21:53:16

^^ the above two scripts both work, however neither are very stable :( thanks for the effort and a somewhat working script nonetheless, but if you are watching someone using this script it is very obvious they are botting, and oftentimes it wont get 500 before game ends. Use at your own risk. But thank you very much for helping me get full void!

cause

2012-09-01 23:41:37

I have posted in this thread before, unfortunately I do not have time to update the script, but I remember lowering the wait times throughout the script helped me get that 500 points (plus you will be slightly faster than the rest of the people running the script :D )

lolskilla

2012-09-01 23:49:47

From: cause
I have posted in this thread before, unfortunately I do not have time to update the script, but I remember lowering the wait times throughout the script helped me get that 500 points (plus you will be slightly faster than the rest of the people running the script :D )


just what i was looking for thank you :DD


and it also logs out after idling for a minute in the boat, is there a way to increase the time that it waits to log out

edit: wow…. your quick fix made this script 100X better thank you very much for full void

Thomas

2012-09-04 10:35:11

Got most of the script to work, only problem I have is that it has trouble finding the advanced plank, misses a few games each hour thanks to that.

It seems to correct itself though.

Any recommend settings for camera zoom or brightness perhaps?

Ivo09

2012-09-15 18:04:04

I've made it spec twice, find advanced plank flawlessly and run pretty smoothly, I'll release what I have if someone helps me fix one last problem, it randomly tries to run north east after it clicks the plank and usually succeeds.

I have a feeling it'll go away if I fix ys>ye.

btraill

2012-09-16 20:13:10

Excuse my ignorance, please!

I downloaded all files, put them in a folder and opened the first one. I added the information to where the values need editing. Upon compiling it, here is the error:


Unknown identifier 'SmartGetDebugDC' at line 216
Compiling failed.


Anyone have a solution? I thought maybe it was supposed to be "SmartSetDebugDC" as there is a declared variable with that name; however, it did not fix it.

Footy

2012-09-16 20:29:10

Google your error. It's a very common error, easily solved.

Solar

2012-09-17 03:21:27

There is also a fixed version of the script further above your post.

Ivo09

2012-09-17 03:37:32

Okay guys, I think I've fixed the script and made it viable for overnight use. Most credits go to Albi for updating it, I just ironed out a couple small bugs. Spec may still be a little buggy, but it usually specs twice, sometimes not at all if there are no monsters. It seems to think it's found the uptext of a monster but it hasn't.

teamemb99

2012-09-27 08:47:07

Thanks to ivo and albi! only tested for about 5-10 mins and seems flawless.

only time it loses bit track is when game ends and takes a while to find boat again.

tho it tells me


"Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now." might be a problem from my end? any advice maybe?

Zeus v8

2012-09-28 09:00:18

From: teamemb99
"Warning! You passed wrong values to a finder function: ys > ye (30,29). Swapping the values for now." might be a problem from my end? any advice maybe?

I have the same error, but with me i enter the boat, and when it arrives my character wont leave the boat to go to the void knight.

rkbninja

2012-09-28 13:45:56

i can even get the rs window to show up i stuck

Rezozo

2012-09-28 15:05:15

From: rkbninja
i can even get the rs window to show up i stuck


Isn't this script, like, waaaaay out dated? I don't think just a couple of tries and random updates will fix a pest control script, that easily.

solarit

2012-10-01 11:44:49

does simba have a pest control script afterall or not? this used to work pretty good

Parfilo

2012-10-13 02:00:57

From: adamsk8s
i have done just that and im releasing it as a temp fix untill pinky comes back..

just take ur char to the boat plank and start the bot. it will do the rest


Thanks man, it works for me with the tweak :)

stoopkid

2012-10-30 02:59:06

im a newbie to using simba i am not sure what the steps are i have to take to run the script could someone msg me or just tell why the script does not work after i run it. im using the msi launcher and the script says compiling failed after i run.

Ashaman88

2012-10-30 07:13:01

From: stoopkid
im a newbie to using simba i am not sure what the steps are i have to take to run the script could someone msg me or just tell why the script does not work after i run it. im using the msi launcher and the script says compiling failed after i run.


This is pinkys script not MSI.. But anyways MSI has been temp shut down. If you want to run a script check out the scripts in the public scripts secton (like this one)

verbs123

2012-11-23 03:26:54

http://gyazo.com/7d2260875417721504e837b02ee586a8

anyone know what that means?

Nexz

2012-11-23 05:54:35

From: verbs123
http://gyazo.com/7d2260875417721504e837b02ee586a8

anyone know what that means?

You don't have the SRL extension installed. More info here: http://villavu.com/forum/showthread.php?t=47714

verbs123

2012-11-24 03:31:11

From: Topic
You don't have the SRL extension installed. More info here: http://villavu.com/forum/showthread.php?t=47714

i did that now, and it gives me this error now:
http://gyazo.com/09c86c7eca8a64aeabb031e38abda062

here is pic of entire screen:
http://gyazo.com/b86026e5b5bc002976109b3ce655c9ad

x x

2012-11-24 14:58:58

Does this work in EOC?

nkd2009

2012-11-25 13:22:28

ya have you incorporated the abilities bar into the script? or do you plan too?

OGxGURU

2012-12-01 16:10:38

From: verbs123
i did that now, and it gives me this error now:
http://gyazo.com/09c86c7eca8a64aeabb031e38abda062

here is pic of entire screen:
http://gyazo.com/b86026e5b5bc002976109b3ce655c9ad


change {$i SRL/SRL/Misc/Paintsmart.simba} to {$i SRL/SRL/Misc/SmartGraphics.simba} and deleted the rest of the error lines after that until it works.

tbanz1

2012-12-01 21:54:13

Exception in Script: Unable to find file 'srl\srl.simba' used from 'C:\Users\Tyler\Downloads\P1nkys PestController[M].simba'?

euphemism

2012-12-07 21:40:03

Moved to outdated.

P1nky

2013-01-07 02:40:29

Hey Mates! I finally got time to update my scripts, well while testing/tweaking my Pestcontroller I found out this old fun game has died out… Which makes me sad in a way.
So this script isn't as efficient that as it was in 2012 :(.

Please report & Enjoy. I will be updating rest of my scripts hopefully this week!

Cheers!

Hobbit

2013-01-07 02:45:02

Glad to see this revived :)

Mr[S]

2013-01-07 03:23:57

I remember playing pest control like 6 years ago, has anything changed in the minigame?

chief herb

2013-01-07 03:35:47

From: P1nky
Hey Mates! I finally got time to update my scripts, well while testing/tweaking my Pestcontroller I found out this old fun game has died out… Which makes me sad in a way.
So this script isn't as efficient that as it was in 2012 :(.

Please report & Enjoy. I will be updating rest of my scripts hopefully this week!

Cheers!


well just maybe the re-vamp will bring bring it back? and its pretty useful cause for trixster armour (idk how to spell it)

x x

2013-01-07 06:00:15

From: chief herb
well just maybe the re-vamp will bring bring it back? and its pretty useful cause for trixster armour (idk how to spell it)

hybrid armour, trickster, vanguard and battle mage:P

From: P1nky
Hey Mates! I finally got time to update my scripts, well while testing/tweaking my Pestcontroller I found out this old fun game has died out… Which makes me sad in a way.
So this script isn't as efficient that as it was in 2012 :(.

Please report & Enjoy. I will be updating rest of my scripts hopefully this week!

Cheers!


PC isn't dead:O there is 50-100ppl playing in veteran boat 247

hellian46

2013-01-07 19:41:48

My character just runs to middle, turns on quick prayers an stands there..

P1nky

2013-01-08 01:37:01

From: x x
hybrid armour, trickster, vanguard and battle mage:P



PC isn't dead:O there is 50-100ppl playing in veteran boat 247

Oh really… Hmm I should focus on making the Veteran boat flawless than!
Although I may need a account :X
From: hellian46
My character just runs to middle, turns on quick prayers an stands there..


Does it not find the Pests?

Gucci

2013-01-08 01:38:23

Great to see this is working again will have to start using again

P1nky

2013-01-08 01:47:58

From: Gucci
Great to see this is working again will have to start using again


Glad to see people still willing to use this :)

Thanks Gucci for the love & support!

hellian46

2013-01-08 04:50:20

From: P1nky


Does it not find the Pests?


I guess not it just stands there until end of game.. When I stop script it says DTMS not freed…

P1nky

2013-01-08 15:06:06

From: hellian46
I guess not it just stands there until end of game.. When I stop script it says DTMS not freed…


I'll fix it up by tonight :)

Sorry for the inconvenience!

hellian46

2013-01-08 17:35:24

From: P1nky
I'll fix it up by tonight :)

Sorry for the inconvenience!



Oh its fine, this is a very nice script an I used it awhile back to get my first set of void..

Also pest control is crazy now on veteran boat I finish 1 game in around 2 minutes an get right back in game as soon as I get on boat.

Gives me "The following DTMs were not freed: [2, 3, 4]" when I stop the script.

Sawyer

2013-01-11 11:26:42

The only problem I have found with the script is that on the Advanced boat, it sometimes spam clicks the plank, gets on the boat, but then leaves because of the spam clicks. The script also is very slow at detecting the shifters at the middle, and half the time we are awarded no commendations for the games.

EDIT: I have played around with some tolerance speeds and added a few waits, which seem to fix the problem. I've also added some more colors of the pests, which greatly increased the speed.

footballjds

2013-01-11 11:53:01

Is this working again? I need to get a lot of PC points… haven't gotten any since the double weekend. I CBF to play this boring minigame over and over and over without a clan.

TomTuff

2013-01-23 19:33:30

From: footballjds
Is this working again? I need to get a lot of PC points… haven't gotten any since the double weekend. I CBF to play this boring minigame over and over and over without a clan.

I had to make it wait after clicking the plank (it kept clicking until the black chat message came up so I had to make it wait after clicking, but that was an easy fix). It's a bit clunky and could use some refining, but I don't have any trouble reaching 5k damage (I am maxed though so idk how it will be for others). Getting back some pieces I lost a long time ago so that I can tribrid KK :D

footballjds

2013-01-25 11:44:07

From: TomTuff
I had to make it wait after clicking the plank (it kept clicking until the black chat message came up so I had to make it wait after clicking, but that was an easy fix). It's a bit clunky and could use some refining, but I don't have any trouble reaching 5k damage (I am maxed though so idk how it will be for others). Getting back some pieces I lost a long time ago so that I can tribrid KK :D


I'll await the promised overhaul of this script. I only bot on my main and I can't ALWAYS babysit… :p

Hellian

2013-01-25 14:38:06

From: footballjds
I'll await the promised overhaul of this script. I only bot on my main and I can't ALWAYS babysit… :p



Yeah im still waiting myself, I can't even get it to work I get it to go ingame but just stands by the void an doesn't attack..

Thief

2013-01-27 03:44:32

From: Hellian
Yeah im still waiting myself, I can't even get it to work I get it to go ingame but just stands by the void an doesn't attack..


The monster colors might be outdated. I updated mine and it works fine for the most part. It has trouble reaching the 5000 when there's lots of people though.

lukipro

2013-01-27 11:45:31

Hi,

unusual, for me what happens is it clicks prayer then just sits there a does nothing in the centre of pest control, any ideas why?

humeruzz

2013-01-27 11:52:19

Does this still work in the EOC? :D

lukipro

2013-01-27 15:08:19

From: humeruzz
Does this still work in the EOC? :D


Does not work for me

Rincewind

2013-01-29 00:09:25

Would love it if this was updated. Back in the day, this was awesome.

footballjds

2013-01-29 10:42:11

P1nky!

quazzymodem

2013-02-06 20:17:13

What is the word on this script, just a few minor touch ups and it still works?

footballjds

2013-02-07 12:00:35

From: quazzymodem
What is the word on this script, just a few minor touch ups and it still works?


MAJOR touch ups

Hobbit

2013-02-13 13:01:53

@P1nky; Any word on an update soon? Otherwise I'll have to move it back to outdated section.

gunman82

2013-02-17 00:34:17

had to buy a pc script at powerbot cuz this script is dead.. :(

DannyRS

2013-02-17 03:39:42

From: gunman82
had to buy a pc script at powerbot cuz this script is dead.. :(


I was going to make a PC script, but I found P1nky's current way of attacking the mobs around the knight could not reach the 5k damage because of the insane amount of PB bots, So I kinda abandoned my project because I hate opening doors

P1nky

2013-02-23 18:06:08

Hobbit please go ahead and move it to outdated, I'll bring it back to 07scape as soon as it starts popping.

Thank You, and yes DannyRS PB massacred it :(