SRL Archive - Outdated / Broken

riwuWaterfiend


riwu

2012-10-23 07:07:33

This is a Waterfiend bot that i just started making yesterday, was a bit of rush making it to gather charms for the bxpw.

Video of it: http://www.youtube.com/watch?v=PNlJxRbywKU

Introduction
Waterfiend is the best monster in RS to collect crimson charms, injection bots are capable of collecting ~100 charms/hr, but i'm hoping to beat that :p

Currently this script only works at Ghorrock (as it doesn't have safety measures to avoid dragons at ancient cavern), and requires the curse Soul Split unlocked as replacement for food as it doesn't support banking.

Instructions
1. Download the script, let it autoupdate, and solve an anti-leech. The anti-leech is not added to test you, it is just in case that some non-member managed to find the script from my github (since it's public). The anti-leech should be very simple to Member+ and anyone with basic knowledge of TPA can solve it in 5 seconds.

2. Bring dragon-fire protection (anti-dragon shield is sufficient) while going there since you will pass by iron dragons
3. Have an emergency teleport for safety.
4. Bring as many prayer potion/renewal for longer trips.
5. You can head to the Glacor Cave for a 3% combat boost for 4 hours if you have completed ROTM.
6. Set your quick prayer to Soul Split.
7. The looting will only work properly when the Waterfiends around you become un-aggressive.

Recommended spot:

Features
-Instantaneous Waterfiend detection and fighting
-Comprehensive Looting system (after they turn un-aggressive), you can edit the LootList to your liking but make sure you read the code and know what you are doing.
-Enhanced Excalibur support
-Prayer Potion/Renewal
-Extreme Attack, Extreme/Super Strength
-Aura
-Suggest more below

Bugs
-It may sometimes wander too far into other zones and the Waterfiend will turn aggressive again, so find an isolated spot with no other Waterfiend to lure you away to other spots. (Or setup some location detection (DDTM, SPS etc) to ensure it stays within the zone–if you came out with a good algorithm post it here!).
-Sometimes some loots (cannonballs etc) may cover up the water rune–which is used to detect loot. If you have an idea to fix this (other than exhaustively coding all the possible loots that could cover it) post it here too. I'm currently thinking of using the MM to detect relative direction of the loot and do a blind click in that direction, taking compass into calculation.
(fixed!)
Report if you encounter any.

Please post the proggy and any bugs/suggestions/comments!!!

Note to SSRL+: I've a private version that utilize soulsplit flashing, hence no prayer potion would be required, pm me if you are interested (the condition is that you don't leak it)

Ashaman88

2012-10-23 07:25:35

hehe I was just working on fixing brandons script, this is a nice release! Congrats on it!

[XoL]

2012-10-23 15:18:57

Nice job! If I still played I would use this :P

Gala

2012-10-23 16:58:09

Nice release, thanks for sharing!

Sin

2012-10-23 17:07:28

Very nice :)

Justin

2012-10-23 21:27:33

Nice release, I would of used but I have 99 summoning already banked

Mjordan

2012-10-23 22:53:04

Does double xp work on summoning this time? I thought in the past bxp weekends they lowered the rates of summoning?

riwu

2012-10-24 04:22:32

From: Mjordan
Does double xp work on summoning this time? I thought in the past bxp weekends they lowered the rates of summoning?

On the official bxpw FAQ thread it says summoning is doubled too this time. But the price of secondary ingredients has almost tripled so unless you collect them yourself, it will cost quite a bit (still worth it since you saved half the time to collect charms).

I've made a few improvements to the script, will update it later. Please report any bugs.
Also note that the script may not work well in crowded places, but it's always empty at Ghorrock.



EDIT: V2.2 changelog:
-Added emergency teleport support for explorer's ring

-Modified LootList slightly

-Supports any weapon/goliath for using EE

-Lowered Length requirement for AttackWF

-Modified AttackWF WaitOption to prevent attacking clan avatar instead

-Fixed a severe under-counting of charms gained (not recording charm gain that was looted after another item, and not doubling the count at Ghorrock)

-Imposed Bitmap check for both potion/flask to avoid hovering over wrong obj

-Increased Emergency teleport HP threshold from 10% to 20%

-Fixed an infinite loop in mainloop that happens if no WF are present in surrounding

-More accurate in-fight detection

-Some other minor speed optimization/failsafes


Please (report any bugs or suggest any features) AND post proggies!

Also can someone bug Wizzup? to add in charm variables? http://villavu.com/forum/showpost.php?p=1115692&postcount=345

footballjds

2012-10-26 14:00:16

I'm getting a client pairing error. can someone link me to the fix for that? I'm too inactive around here and our search is complete s**t

haha, this is my java versions:

smart prolly doesn't appreciate that…

EDIT:
finally got it to work. I can barely use my computer because it brings smart to the front ever split second, even when it's minimised i have to re-click the window I'm typing in(atm this one). haha. ffs…

Anyhow, list of improvements:
check if inv is full b4 looting not stackables that aren't already in inv
support for lower dose prayer renewal(it is only drinking full 4 dose renewals)
instead of waiting for your hp bar to disappear try waiting for the fiend's to disappear
raise the amount of "colors" it needs for fiends. It is often targeting the water droplets
I manually increased the hp percent so it activates SS way before you set it. idk why you wanna let your char go down that far, but w/e :P
It's slow and botty, but it's nice (:


BIG THANKS RIWU!!!!

EDIT2:
    if (HPPercent < 50) then
begin
writeln('Low hp...waiting to heal');
repeat
if UseEE then
Break;
SetRest;
LowHP;
wait(35);//ADD THIS LINE
until FoundHpBar or (HPPercent > 60);
end;
I added a 35ms wait in your loop. My cpu spiked to 100% while resting and i resolved why. Never loop over something like that, please… :P

riwu

2012-10-26 21:47:37

From: footballjds
I'm getting a client pairing error. can someone link me to the fix for that? I'm too inactive around here and our search is complete s**t

haha, this is my java versions:

smart prolly doesn't appreciate that…

EDIT:
finally got it to work. I can barely use my computer because it brings smart to the front ever split second, even when it's minimised i have to re-click the window I'm typing in(atm this one). haha. ffs…

Anyhow, list of improvements:
check if inv is full b4 looting not stackables that aren't already in inv
support for lower dose prayer renewal(it is only drinking full 4 dose renewals)
instead of waiting for your hp bar to disappear try waiting for the fiend's to disappear
raise the amount of "colors" it needs for fiends. It is often targeting the water droplets
I manually increased the hp percent so it activates SS way before you set it. idk why you wanna let your char go down that far, but w/e :P
It's slow and botty, but it's nice (:


BIG THANKS RIWU!!!!

EDIT2:
    if (HPPercent < 50) then
begin
writeln('Low hp...waiting to heal');
repeat
if UseEE then
Break;
SetRest;
LowHP;
wait(35);//ADD THIS LINE
until FoundHpBar or (HPPercent > 60);
end;
I added a 35ms wait in your loop. My cpu spiked to 100% while resting and i resolved why. Never loop over something like that, please… :P

Thanks for the great feedback! I'll give you a detailed response as well ;)

Yeah i realize that loop 2 days ago too (when i finally went into <50% hp), didn't bother to update the public version since from the SRL stats no one seems to even use it, so i'm like talking to myself when i make updates on the thread :rolleyes: I just checked the stats there's still no commits from you? Is there a problem with my stats? Mine are committing fine though.

Also that loop is still potentially infinite because you could get logged out before reaching sufficient hp. I had added a couple of failsafes, will update my git later.

The hp bar check actually checks for the fiend's bar (which is why it is much faster than srl_infight), which is about the same time as when the wf disappear. Still it might be ~1 tick faster than that so i'll look into it.

I've originally set the min length at 80 but because the Wf 'north' of you is partially blocked i realize it will go for a further wf instead of that so i lowered it. Is the water droplet so big?

Also it may not be a good idea to have that many java versions, i'd advise fully uninstall all of them, and clear all jagex caches (from the RSOF):
Open My Computer

Double Click on the Address bar at the top

Copy and Paste the following directories into the address bar:

%HOMEDRIVE%\.jagex_cache_32

%WINDIR%\.jagex_cache_32

%USERPROFILE%\jagexcache\runescape\LIVE

%USERPROFILE%\.jagex_cache_32


Once you've found these folders, please find and delete the files preference.dat and preferences2.dat


then just install 1 single version of java (java 6 works best for Smart as it doesn't have the Smart stealing focus and pop up problem).

Thanks again for the detailed report, i'll fix the issues later.

Ashaman88

2012-10-26 21:58:49

Ps I thought srl stats haven't been updating for like 6 months? Or did something change I missed?

Le Jingle

2012-10-26 22:05:41

I downloaded it to take a peek :)

Haven't gotten around to testing though :s

Also, SRL Stats is no-no for now ; http://villavu.com/forum/showpost.php?p=1042508&postcount=6

riwu

2012-10-26 22:13:03

Just that it doesn't appear on the main script page, you can still see all the commits at certain pages:




EDIT: V4.2 changelog:
-Added support for re-wielding goliath gloves when they fall apart (so have more goliath in inventory)
-Walk to closest MM npc dot when wf not found
-Use WfPresent as detection for in fight as well
-Increase 'colors' required for WF, tell me if it's still not enough

I won't touch on looting yet because i was thinking of a new algorithm (including high alching some loots) but that may take quite some time, edit the LootList to just collect stackable loots if you are worrying about inv full.

Also debugged renewal they do get detected?

footballjds

2012-10-27 13:22:40

From: riwu
EDIT: V4.2 changelog:
-Added support for re-wielding goliath gloves when they fall apart (so have more goliath in inventory)
-Walk to closest MM npc dot when wf not found
-Use WfPresent as detection for in fight as well
-Increase 'colors' required for WF, tell me if it's still not enough

I won't touch on looting yet because i was thinking of a new algorithm (including high alching some loots) but that may take quite some time, edit the LootList to just collect stackable loots if you are worrying about inv full.

Also debugged renewal they do get detected?


Sorry riwu, i haven't entered in my stats info, I'll try to locate it… :P

awesome updates i'll look at it asap, hopefully i'll find my stat info too :)

as far as prayer renewals. i assumed the issue was detection because it was only drinking from the full renewals. I guess the issue is something else, but i can confirm it's not drinking them correctly(every 5 mins)

fyi, I didn't bring ROL, trusting your script to keep my main, ;)

riwu

2012-10-28 06:33:16

From: footballjds
Sorry riwu, i haven't entered in my stats info, I'll try to locate it… :P

awesome updates i'll look at it asap, hopefully i'll find my stat info too :)

as far as prayer renewals. i assumed the issue was detection because it was only drinking from the full renewals. I guess the issue is something else, but i can confirm it's not drinking them correctly(every 5 mins)

fyi, I didn't bring ROL, trusting your script to keep my main, ;)

Bring an emergency teleport at least (any one-click teleport/explorer ring). You may die if you run out of prayer potion/weapon corrupted. I nearly died (emergency teleport procedure saved me) before i added the goliath replacement support.

footballjds

2012-10-31 16:43:27

riwu!!! :D

============================================================================================
riwuWaterfiend: visit [url]http://villavu.com/forum/showthread.php?t=91574[/url] for more info
Time Running: 5 Minutes and 14 Seconds
Xp gained: 6265 (71711/hr)
Gold/Green/Crimson/Blue charms gained (per hr): 0(0) / 0(0) / 6(69) / 0(0)
Time Till Break: 337 minutes
Please post the proggy if you want this script to remain available & updated
============================================================================================

please add at least wait(50) to all your repeat/while loops that would affect processor speed(IE, ones that will repeat over something SUPER FAST for more then 1 second, kind of like your loop you had before for resting)
now that simba and SMART run in different processes you can see exactly how much cpu SIMBA is consuming. I'd make a goal to keep that extremely low. Simba barely does anything :P

Thanks! I'll be using and I'm tweaking your script as i use :)

EDIT: I suggest you run your script while monitoring cpu usage and try to correlate spikes in the processor with what the script is doing(looping) :) sorry my laptop is old… hehe

NKN

2012-10-31 16:45:12

Dat moment this script is in the public paste section of paste.villavu.com…

footballjds

2012-10-31 16:52:59

From: NKN
Dat moment this script is in the public paste section of paste.villavu.com…


I don't see it there? hmm? you confused me…

Riwu, I've added my SRL stats, you'll see major commits from me while I'm in front of my laptop babysitting :D

May I make a suggestion for the next development step? Only attack fiends in your "area".
If you want help with that or don't understand what I'm saying lmk. I already have a pretty good idea on how to code that.

EDIT: just got a brilliant idea to speed up kill count. Search for a dtm of a completely red health bar(ALWAYS shows up for .5 to 1.5 seconds when a fiend dies, nothing covers it except a hit splat which disappears faster)

EDIT2: I suggest changing when it turns off prayer to before it loot as opposed to after looting :P

NKN

2012-10-31 17:12:14

From: footballjds
I don't see it there? hmm? you confused me…

Riwu, I've added my SRL stats, you'll see major commits from me while I'm in front of my laptop babysitting :D

May I make a suggestion for the next development step? Only attack fiends in your "area".
If you want help with that or don't understand what I'm saying lmk. I already have a pretty good idea on how to code that.

EDIT: just got a brilliant idea to speed up kill count. Search for a dtm of a completely red health bar(ALWAYS shows up for .5 to 1.5 seconds when a fiend dies, nothing covers it except a hit splat which disappears faster)

http://paste.villavu.com/show/3493/

footballjds

2012-10-31 17:14:50

From: NKN
http://paste.villavu.com/show/3493/


at least it's an old version… :D

EDIT:
New proggy, would have been a LOT better if it didn't keep running super far away and making the waterfiends aggressive. Everytime i paused the script there were sever charm drops scattered all over that were missed. So adding a feature to stay in a specific area would greatly increase the charm rate(: Where do you usually run this at?

THANK RIWU!!!

============================================================================================
riwuWaterfiend: visit [url]http://villavu.com/forum/showthread.php?t=91574[/url] for more info
Time Running: 1 Hours, 5 Minutes and 14 Seconds
Xp gained: 74028 (68083/hr)
Gold/Green/Crimson/Blue charms gained (per hr): 0(0) / 0(0) / 48(44) / 0(0)
Time Till Break: 223 minutes
Please post the proggy if you want this script to remain available & updated
============================================================================================

EDIT: It stopped drinking prayer pots :'(

debug:
No prayer potion found
Low hp…waiting to heal
Low hp…waiting to heal

I nearly died… :P

J J

2012-10-31 18:07:05

From: footballjds
at least it's an old version… :D

Well considering it's on Villavu paste an admin should be able to see what IP has posted it :garfield:

About SRL Stats:
I want to add SRL Stats to my remaked GOP script to see how badly it will be abused. The maps have been downloaded 233 times in a few months. Then on Powerbot a GOP script got over 2400 replies and 46000 views in a few weeks. I guess people don't know we have a GOP script.

Anyways, nice changelog, good to see you are updating it. I'm wondering if an admin can see who leaked it.

footballjds

2012-11-01 11:10:48

what's up with your stats riwu?(and you for that matter, be more active, hehe)

but seriously, why are your stats show 0 commit time? http://stats.villavu.com/script/1266

riwu

2012-11-01 20:54:47

From: footballjds
riwu!!! :D

please add at least wait(50) to all your repeat/while loops that would affect processor speed(IE, ones that will repeat over something SUPER FAST for more then 1 second, kind of like your loop you had before for resting)
now that simba and SMART run in different processes you can see exactly how much cpu SIMBA is consuming. I'd make a goal to keep that extremely low. Simba barely does anything :P

Thanks! I'll be using and I'm tweaking your script as i use :)

Ok i'll read through all my loops today, if i still missed out any of them do inform me.

From: footballjds

May I make a suggestion for the next development step? Only attack fiends in your "area".
If you want help with that or don't understand what I'm saying lmk. I already have a pretty good idea on how to code that.

Hmm the most reliable way i can think of is to use a DDTM anchor and check the distance and run back after every kill? What other way you thought of?

From: footballjds

EDIT: just got a brilliant idea to speed up kill count. Search for a dtm of a completely red health bar(ALWAYS shows up for .5 to 1.5 seconds when a fiend dies, nothing covers it except a hit splat which disappears faster)

Ok i can add the red health bar thing, although you will still have to wait for the loots to appear? I'll probably use TPA to do it though, The hp bar may not be of perfectly horizontal all the time so will have to use DTMRotated which is slow/unreliable.


From: footballjds

EDIT: It stopped drinking prayer pots :'(

debug:

I nearly died… :P

Hmm i tried out the DrinkPotion it does drink 1-3 dose pray pots for me. Try calling DrinkPotion(9091129) to test out if it detects correctly? You can remove the ClickMouse2 while testing to prevent wasting pots :p

From: J J
Well considering it's on Villavu paste an admin should be able to see what IP has posted it :garfield:

About SRL Stats:
I want to add SRL Stats to my remaked GOP script to see how badly it will be abused. The maps have been downloaded 233 times in a few months. Then on Powerbot a GOP script got over 2400 replies and 46000 views in a few weeks. I guess people don't know we have a GOP script.

Anyways, nice changelog, good to see you are updating it. I'm wondering if an admin can see who leaked it.

Well that'll be embarrassing because i'm probably the one :p
I usually paste my old version and updated version to compare changes (i don't have super memory to remember everything i changed :p), and ensure i didn't unintentionally add/remove something. Usually i'll remember to tick 'paste private' but sometimes forgot :D Should have stick to using the Paster extension next time.

@NKN how did you come across it though?

And yeah public scripts are always heavily abused. My default stats acct (when user dont define stats id/pw) is ranked 33 now, and i dont even release goldfarming scripts! I could imagine what would happen to Ghorrock if this script goes public, esp since i heard that pb has no free Wf script now :rolleyes:


From: footballjds
what's up with your stats riwu?(and you for that matter, be more active, hehe)

but seriously, why are your stats show 0 commit time? http://stats.villavu.com/script/1266

You have to click 'commits to this script':
http://stats.villavu.com/script/1266/commits

Wizzup turned off some cache thing so some part of stats works fine while several other parts don't get updated at all (eg. User/overall script statistics)


EDIT: i think the flawed potion drinking could be due to uptext distortion. I just witnessed it not drinking my extremes due to the background color making the uptext distorted. Probably will just remove the uptext check since bitmap+color is accurate enough.
Still it's kind of strange that it only drink 4 dose in your case.

Also, i forget to mention that you should have anagogic orts disabled/gained 200 for the day, as occasionally it may block loots.

footballjds

2012-11-02 10:15:29

From: riwu
Ok i'll read through all my loops today, if i still missed out any of them do inform me.


Hmm the most reliable way i can think of is to use a DDTM anchor and check the distance and run back after every kill? What other way you thought of?


Ok i can add the red health bar thing, although you will still have to wait for the loots to appear? I'll probably use TPA to do it though, The hp bar may not be of perfectly horizontal all the time so will have to use DTMRotated which is slow/unreliable.



Hmm i tried out the DrinkPotion it does drink 1-3 dose pray pots for me. Try calling DrinkPotion(9091129) to test out if it detects correctly? You can remove the ClickMouse2 while testing to prevent wasting pots :p

You have to click 'commits to this script':
http://stats.villavu.com/script/1266/commits

Wizzup turned off some cache thing so some part of stats works fine while several other parts don't get updated at all (eg. User/overall script statistics)


EDIT: i think the flawed potion drinking could be due to uptext distortion. I just witnessed it not drinking my extremes due to the background color making the uptext distorted. Probably will just remove the uptext check since bitmap+color is accurate enough.
Still it's kind of strange that it only drink 4 dose in your case.

Also, i forget to mention that you should have anagogic orts disabled/gained 200 for the day, as occasionally it may block loots.


Rather then distance from a dtm anchor, why not draw a "rectangle" from a dtm anchor and make sure the fiend is within that point on the mm. The use MMtoMS to see if it's on MS if not run to it and do the same again. Thoughts?

yeah, you're right about waiting for loots. Guess it's[hp bar] not worth it then… :P

I filled up the pots to make them all 4 doses, ran the script again and it didn't drink them… :/ uptext or you need better detection, idk? :P

Thanks riwu! looking forward to updates.
Also, about loots, i believe cannonballs are one of the only thing covering water runes completely. Maybe mithril helms too, i forget. but anyhow, searching for three things isn't tooooooo bad ;)

riwu

2012-11-02 10:25:43

From: footballjds
Rather then distance from a dtm anchor, why not draw a "rectangle" from a dtm anchor and make sure the fiend is within that point on the mm. The use MMtoMS to see if it's on MS if not run to it and do the same again. Thoughts?

yeah, you're right about waiting for loots. Guess it's[hp bar] not worth it then… :P

I filled up the pots to make them all 4 doses, ran the script again and it didn't drink them… :/ uptext or you need better detection, idk? :P

Thanks riwu! looking forward to updates.
Also, about loots, i believe cannonballs are one of the only thing covering water runes completely. Maybe mithril helms too, i forget. but anyhow, searching for three things isn't tooooooo bad ;)

So you are suggesting to use MMtoMS to find fiend? I've tried using it to find loot but it isn't accurate enough, will try if it's accurate enough for npc.

You can try remove the uptext check and see if it drinks. If not try use ACA and see if the color matches? When i debugged it it's working for me.

Yeah i've added cannonball detection, mithril helm don't cover it completely so it can still detect.
You can try test it:
           function Loot: Boolean;
var
TPA: TPointArray;
ATPA: T2DPointArray;
tItem, i, x, y, j, matches, where, s, c: Integer;
options: array of TOptions;
lootBox: TBox;
charmIncreased, notFirstLoop, found: Boolean;
ColInfo: array of TVariantArray;
begin
tItem:= GetSystemTime + RandomRange(2822,3144);
while (tItem > GetSystemTime) and (not Result) do
begin
if Inactive(true) then
Exit;
//HueMod, SatMod, Col, tol
ColInfo:=[TVariantArray([1.15, 1.22, 11514807, 10]), //white col of water rune
TVariantArray([0.99, 0.91, 12932154, 10]), //blue col of water rune
TVariantArray([1.39, 0.25, 1118482, 6])]; //cannonball

SetLength(ATPA, Length(ColInfo));
ColorToleranceSpeed(2);

for i:=0 to High(ColInfo) do
begin
SetColorSpeed2Modifiers(ColInfo[i][0], ColInfo[i][1]);
FindColorsTolerance(ATPA[i], ColInfo[i][2], 216,135,303,219,ColInfo[i][3]); //BigBox
end;

ColorToleranceSpeed(1);

MergeATPAWrap(ATPA, TPA);

ClearTPAWithCompass(TPA, TotalTPA);
ClearTPAFromTPAWrap(TPA, PlayerTPA, TPA);

{$IFDEF SMART}
if DEBUG_MODE then
SMART_DrawDotsEx(True, TPA, clYellow);
{$ENDIF}

if Length(TPA) < 10 then
begin
if not notFirstLoop then
begin
case Random(2) of
0:
MakeCompass(rs_GetCompassAngleDegrees + RandomRange(80, 120));
1:
MakeCompass(rs_GetCompassAngleDegrees - RandomRange(80, 120));
end;

notFirstLoop:= True;
end;

Wait(RandomRange(50,100));
Continue;
end;

SplitTPAWrap(TPA,3,ATPA);
SortATPASize(ATPA, true);

for i:=0 to High(ATPA) do
if Length(ATPA[i]) > 9 then
begin
found:= True;
MiddleTPAEx(ATPA[i], x, y);
CMouse(x, y, 1, 1);
ClickMouse2(false);
for s:=0 to 5 do
begin
matches:= 0;
if WaitOptionMultiEx(['Tak','ake','ke '], '', Nothing, 618) then
begin
Result:= True;
options:= GetChooseOptions('');
for j:=0 to High(options) do
begin
options[j].Str:= Replace(options[j].Str, '?', '');
options[j].Str:= Replace(options[j].Str, '!', '');
if ArrInStrEx(LootList, options[j].Str, where) then
begin
if not charmIncreased then
for c:=0 to 3 do
if where = c then
begin
IncEx(CharmArray[c], 2);
charmIncreased:= True;
Break;
end;

if matches = 0 then
lootBox:= Options[j].Bounds;
Inc(matches);
end;
end;

case matches of
0:
begin
CancelOption(x,y);
Break;
end;

1:
begin
MouseTBox(lootBox, mouse_Left);
wait(RandomRange(100,200));
Exit;
end;

2..99:
begin
MouseTBox(lootBox, mouse_Left);
wait(RandomRange(1936,2144));
CMouse(MSCX+1, 180, 1, 1);
ClickMouse2(false);
end;
end;
end else
begin
CancelOption(x,y);
Break;
end;
end;
end;

if not found then
wait(RandomRange(10,50));
end;
end;
Will probably do the update tmr when i optimize a few more stuffs.


EDIT: sorry the loot function posted previously had the wrong search param, changed it.

footballjds

2012-11-12 12:07:12

Hey riwu, how's the update coming? I wanted to wait to test until you updated. I've been testing flight's livid script in the mean time. Is this script something you're going to up-keep or should I make my own? :)

Don't be super worried about EOC, your hard work now won't all be lost (:

riwu

2012-11-12 19:32:05

From: footballjds
Hey riwu, how's the update coming? I wanted to wait to test until you updated. I've been testing flight's livid script in the mean time. Is this script something you're going to up-keep or should I make my own? :)

Don't be super worried about EOC, your hard work now won't all be lost (:

I've already come up with something to keep you within your area but haven't test it yet; have been busy testing something else for the past few days ;)
Will probably spend some time later and test it, expect an update in a few hours.

EDIT: after testing i found some memory leak problems, probably have to delay release to tmr :(

footballjds

2012-11-13 00:17:49

From: riwu
I've already come up with something to keep you within your area but haven't test it yet; have been busy testing something else for the past few days ;)
Will probably spend some time later and test it, expect an update in a few hours.


expecting…

riwu

2012-11-15 05:49:46

Sorry for the delayed update, but the improvements are worth the wait ;)

V5.3 changelog:
Major
-Added/created wrappers for all Simba function that i can think of. This should fix all major memory leaks. (the cpu spikes you mentioned earlier could mostly be due to SRL functions not using wrappers). If you notice any persistent memory increase (meaning it last longer than few mins), or notice me/the srl include using a Simba function without wrappers please inform me.

-Added various means to retain the player within the current location. If this is not working perfectly, inform me as well.

-Drastically improved the loot system. It should now be able to loot perfectly at least 95% of the time. (after WF lose aggressiveness) I have a big project in mind that could further improve it to 100% but probably won't have time to finish it before EOC comes.

-Detects the death of WF through full red hp bar.

-Drops your empty vials.

-Added option to attack WF using minimap dots. However, as MMToMS is rather inaccurate at this point of time, i advise against using it (turn USE_NPC_DOTS to false).

Trival
-Will now pick up Anagoric orts

-Saves a screenshot of you dying (in case you want to know what happened) to the script path

-Fix a :duh: issue of FreeBitmap(DTMgoliath);

-Some other surprises that i'll leave you to find out yourself ;)


The script should be able to work at any of the big areas in the map but i'd recommend this spot (the place at the lower part of the map to the left) for max efficiency:


footballjds

2012-11-15 11:39:31

looking good! Flight just gave me a version of his livid script so i gotta test that today but i should be able to run this tonight/tomorrow! :)

EDIT:
Testing now, died once with flight's and almost died again so i'm done till he gets a new release :P

EDIT2: going nicely (: I'm running it without waiting till they're non-agro
============================================================================================
riwuWaterfiend: visit [url]http://villavu.com/forum/showthread.php?t=91574[/url] for more info
Time Running: 04m 32s
Xp gained: 5374 (71012/hr)
Waterfiend killed: 16 (211/hr)
Gold/Green/Crimson/Blue charms gained (per hr): 2(26) / 0(0) / 2(26) / 0(0)
Time Till Break: 994 minutes
Please post the proggy if you want this script to remain available & updated
============================================================================================
EDIT:3
It's going pretty well. however it's not drinking my pray renewal flasks…
Could you add support for dropping empty vials? :P
Could you take a look at what happens right after clicking on the loot in the context menu? It lags like hell between clicking the loot and waiting till it's in the inv. I'll check your code and see if you missed a wait in your loop again :P

EDIT: 4 think i found the issue. you should wait at least 10 ms even if matches is above 1
Please try to always wait ATLEAST 5ms in a loop that just repeats a func/proc (unless its like a for i := 0 to 120 and you're editing an array)
Also, I removed the wrap from the script per the PM I sent you so everything would compile.
I noticed it misses charms sometimes because it checks OLD loot rather then the loot dropped by the waterfiend just killed. IE if there's a water rune 1 square north and you're killing a fiend 1 square east it will check the north one and then skip the east one even though that WAS where the fiend was. I'd suggest checking both or starting the search from a point on the MS that would always get the loot from the fiend that was just killed rather then the old loot.

all in all good stuff riwu can't wait for more :D

LAST EDIT TILL YOU COMMENT:
============================================================================================
riwuWaterfiend: visit [url]http://villavu.com/forum/showthread.php?t=91574[/url] for more info
Time Running: 01h 24m 59s
Xp gained: 97636 (68931/hr)
Waterfiend killed: 306 (216/hr)
Gold/Green/Crimson/Blue charms gained (per hr): 14(10) / 2(1) / 46(32) / 2(1)
Time Till Break: 914 minutes
Please post the proggy if you want this script to remain available & updated
============================================================================================

riwu

2012-11-16 01:19:27

im on my phone now cnt really see the msg but remove the 'wrap' from all function giving unknown iden error. eg. just countcolortolerance.

changed it last min when markus told me only array/record leak but forgot to chg in the script..


EDIT:
It's going pretty well. however it's not drinking my pray renewal flasks…

Argh i'm just as careless in scripting as in doing my math homework -.-
Copy pasted the first statement but forget to edit the variable…
Change the bmpPot here to bmpFlask

FindDeformedBitmapToleranceIn(bmpPot, x, y, SlotBox.x1,SlotBox.y1,SlotBox.x2,SlotBox.y2, 40, 0, true, AccBmpPot);
FindDeformedBitmapToleranceIn(bmpFlask, x, y, SlotBox.x1,SlotBox.y1,SlotBox.x2,SlotBox.y2, 10, 0, true, AccBmpFlask);

It should already drop empty vials, but it will only do so while drinking. i.e. it searches for a universal bitmap of potion/flask from inv slot 1-28, then if the color is correct it will drink, otherwise if it contains a certain amt of the empty vial color it will drop it. I guess i'll make it a separate function that checks and drops while fighting for efficiency?

And yeah i forget a wait in that loop :redface:
Seems like i've been handling arrays with for loops too much, keep forgetting that i'm scripting for RS..

The only times that it fails to loot that i can think of atm is:
-While the target WF is dying (maxed red hp bar), Some WF nearby is standing on a red dot
-And before the new loot appears, the Wf walks away, uncovering the dot
The script will think that a new red dot spawn on the map and break out of the wait too early. It shouldn't happen that often though?

I will try to come up with a new mechanism today to detect which direction the WF is at.

footballjds

2012-11-16 10:07:26

Thanks for the replies riwu! I changed the bmp to flask on the second line.
I edited your loop inside wait loot to be:
  while (tInv > GetSystemTime) do
begin
wait(10);
if not FindBitmapIn(bmpInv, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
if DEBUG_MODE then
writeln('Inv changed!');
Break;
end;
end;

I'm gonna start it up again :D
Just saw your update and you added a wait in the loop, thanks bro!
EDIT: OMG i <3 you! I just updated it and it didn't overwrite the settings :D was wondering why you had two vars for updates!!! :P
Could you add the loot list to a const somehow so we don't(or I don't, doesn't look like anyone but me and you use this :P) have to add mithril arrows each time I update :)
EDIT: 2
It's running like a dream bro!!! however it didn't activate my aura for some reason? Idc about that, i can click one thing ;)
(vampyrsm ftw)
============================================================================================
riwuWaterfiend: visit [url]http://villavu.com/forum/showthread.php?t=91574[/url] for more info
Time Running: 06m 35s
Xp gained: 7362 (66957/hr)
Waterfiend killed: 24 (218/hr)
Gold/Green/Crimson/Blue charms gained (per hr): 0(0) / 2(18) / 4(36) / 0(0)
Time Till Break: 992 minutes
Please post the proggy if you want this script to remain available & updated
============================================================================================
EDIT: 3
Do you suggest leaving this line false:
USE_NPC_DOTS = false; //Slower method of attacking WF, but prevents it from wandering off.
EDIT: 4
It just thought I was dying:
Debug:
============================================================================================
riwuWaterfiend: visit [url]http://villavu.com/forum/showthread.php?t=91574[/url] for more info
Time Running: 16m 52s
Xp gained: 17974 (63921/hr)
Waterfiend killed: 56 (199/hr)
Gold/Green/Crimson/Blue charms gained (per hr): 0(0) / 2(7) / 10(36) / 0(0)
Time Till Break: 982 minutes
Please post the proggy if you want this script to remain available & updated
============================================================================================
Dying! Emergency teleport!
Successfully executed.
EDIT: 5 according to runescape.wikia.com the charm rate for crimson drops is 32-35% with 2 charms being dropped at a time. IF your kill count is accurate then we're missing out a on lot of charms. I'd try looking into this.
GREAT script though!
============================================================================================
riwuWaterfiend: visit [url]http://villavu.com/forum/showthread.php?t=91574[/url] for more info
Time Running: 03h 23m 50s
Xp gained: 232571 (68454/hr)
Waterfiend killed: 740 (218/hr)
Gold/Green/Crimson/Blue charms gained (per hr): 18(5) / 6(2) / 160(47) / 2(1)
Time Till Break: 795 minutes
Please post the proggy if you want this script to remain available & updated
============================================================================================
Dying! Emergency teleport!
Successfully executed.
My health was low so it actually did the right thing. I guess i got super un-lucky with SS hits for a while? my Goliath gloves disintegrated and i didn't have another pair. :P Do you support a specific color for Goliath gloves or what? Is re-wielding Goliath gloves solely based on time or do you support starting the script with your gloves at anything besides 0%?

riwu

2012-11-16 19:43:34

I'll follow the order of your edit:

1.
-Yeah your settings won't be override unless i make changes to Const/wrapper.
-The limitation with PS is that you can't have arrays as Const. I can however make a procedure to set the Lootlist and shift it above the autoupdater.
-Also note that the Loot string must be exactly what that is followed by 'take'. i.e. for Gold charm, it can be named with Gold C, Gold Ch etc, but not 'old charm', or 'charm'.
-I could possibly improve this and make it not case sensitive as well, but do you think there is a need? Does Simba's OCR return the option menu perfectly every time?
-Also insert the loot you want AFTER the charms, because i use the array of index 0-3 for detecting whether you have looted charms.

2.
It will simply try to activate aura at the start, then wait for AURA_CD time before it attempt to activate again. So if your aura is is already in CD, then becomes active after the script started for a while, it won't activate it until the AURA_CD. (make sure you set it correctly)
That's probably the most non-flexible thing in the script, i could possibly add an auto check for aura CD time in the future. If you start the script with aura off it should work though, and it should autocorrect itself in the next cycle after AURA_CD.

3.
Forget to change that comment, it should be: Recommend to turn it off until someone makes MMToMs more accurate. Previously i can only rely on using MM to make it stay in area, but i've come up with a MS method so it's not needed anymore. (i still use it to walk back to WF if somehow you wander a bit too far)

4.
I dont think the dying would return false positive because it relies on:
if HPPercent < 20 then
It should also save a screenshot of your pending demise in your script path, check it to have an idea of what happened. (file name: WF_Dying.png)

5.
Ugh seems like the kill count is off, you would be getting some 140k xp/hr if it's 218, i'll see what's wrong with it. Based on the xp you had killed ~102/hr. Still we missed up a decent amt of charms. I'll see what i can come up with today to improve it.

6.
Contrary to the aura which was made when i'm a novice, this one is very flexible. It re-wield when the chat box says your goliath has broken. Since it checks it in the fight loop it's unlikely that you'll ever missed the message (since it'll be checked every few hundred ms). So you can have your wielded glove at any %.
However, there is a timer in which it won't check again after it re-wield the glove, because the broken glove msg will still be there so you won't want it to keep wielding your third pair if you brought it. On second thought this could cause problem if the new glove it wield is actually a very old glove…i'll reduce the timer drastically and check for eq perhaps? Your replacement glove shouldn't be a almost-broken one though :p
Also can you check if the glove fell apart msg appear even with game chat filter on? (when you see the msg, turn it on and see if the msg is still there or get filtered off)

I'm running it now, much decent proggy than you so far :p
Wear elite void knight for more dmg, more prayer, decent mage def.
You probably spent the last 23min attacking with your bare feet and resting after every kill :p

footballjds

2012-11-16 22:04:44

I don't have extremes, you should support supers!

riwu

2012-11-16 22:36:48

From: footballjds
I don't have extremes, you should support supers!

K i'll add it in the next version. Also found the kill count problem, it's double counting.
I shifted
Inc(WfKilled);
from Report to mainloop but forget to remove it from Report too..

EDIT: slowed down after running out of extremes :( Seems like i should switch to flasks

footballjds

2012-11-16 23:03:19

From: riwu
K i'll add it in the next version. Also found the kill count problem, it's double counting.
I shifted
Inc(WfKilled);
from Report to mainloop but forget to remove it from Report too..


nice stuff, lmk when the new version is out! I'll be online for awhile so let me know.

riwu

2012-11-17 01:08:33

From: footballjds
nice stuff, lmk when the new version is out! I'll be online for awhile so let me know.


I think i'll just let it run past 6 hour to test if the six hour fix works on the script. So you will have to wait a while more.


<3 the free spins this script gives me :D
Hopefully i'll get another effigy soon


EDIT: last proggy from V8.4. Six hour fix works :D



Added super set support in V9.5, and some minor changes. I've some other plans in mind though no time to implement them today :(

John

2012-11-17 22:58:22

Your Username is in there.

NKN

2012-11-17 23:04:55

My username has SRL in it too. FOREVER TOGETHER

riwu

2012-11-17 23:12:52

From: John
Your Username is in there.

Opps thanks. Edit that out in your reply please :D
Luckily it is in member forum.

From: NKN
My username has SRL in it too. FOREVER TOGETHER

Oh what a coincidence, you work for the Survival Research Lab too?

[off-topic]
For some reason one of my VPN is getting DDOSed/something -.-

John

2012-11-17 23:36:19

From: riwu
Opps thanks. Edit that out in your reply please :D
Luckily it is in member forum.


Oh what a coincidence, you work for the Survival Research Lab too?

[off-topic]
For some reason one of my VPN is getting DDOSed/something -.-


Done

Le Jingle

2012-11-18 00:25:19

Figured I'd give it a test; in that darn laggy SMART v7.2

John

2012-11-18 05:41:25

From: Le Jingle
Figured I'd give it a test; in that darn laggy SMART v7.2


Just update to smart 8? It's alot better.

footballjds

2012-11-19 10:00:30

Riwu, I'll give her a whirl here in a minute :D

Le Jingle

2012-11-19 10:15:47

From: John
Just update to smart 8? It's alot better.


Believe me, I've tried -.- Unless somebody links me to their exact simba version from a nala link (in which they're currently running smart v8 in), I've given up until the next stable simba w/ packaged smart release. :/

OT: I tried running it once, tele'd after ~20 charms saying I was about to die (full hp) - I'll see if I missed an antileech later, but from the test run it seemed really accurate! :)

Cheers,
Lj

footballjds

2012-11-19 11:38:36

no anti-leach, this is srl members section… :P

i believe the srl function returned 0 for health because it couldn't read it. riwu should timestamp hp checks so if it returns 0 once in a while he can ignore it if it just returned 900 1 second ago.

EDIT: Riwu, it's running great, however it's not ever using EE, did you mess with the logic there? it started using it after i used it manually once myself and moved it out of the 27th inv spot

Decent proggy i suppose:
============================================================================================
riwuWaterfiend: visit [url]http://villavu.com/forum/showthread.php?t=91574[/url] for more info
Time Running: 03h 45m 48s
Xp gained: 285386 (75829/hr)
Waterfiend killed: 448 (119/hr)
Gold/Green/Crimson/Blue charms gained (per hr): 22(6) / 12(3) / 160(43) / 10(3)
Time Till Break: 773 minutes
Please post the proggy if you want this script to remain available & updated
============================================================================================

riwu

2012-11-20 05:03:05

From: Le Jingle

OT: I tried running it once, tele'd after ~20 charms saying I was about to die (full hp) - I'll see if I missed an antileech later, but from the test run it seemed really accurate! :)

Cheers,
Lj

Can you check your script path for a file WF_Dying.png? The script takes a screenshot before initiating emergency teleport.

Why would HpPercent return wrong results? Anything that could have made it gone wrong?

There was an antileech in the earlier versions because i use public github as autoupdating, so it would prevent non-members from using it in case they somehow managed to find it from my git. I forgot to re-add it in subsequent versions though :p

From: footballjds

EDIT: Riwu, it's running great, however it's not ever using EE, did you mess with the logic there? it started using it after i used it manually once myself and moved it out of the 27th inv spot

Hmm don't think so. It's working for me. I'll add some debugs to locate any potential error in the next version.

We shall see if i've time to update this for EOC :rolleyes: hopefully not too drastic changes.

Le Jingle

2012-11-20 05:17:52

I was using smart 7-2 so I don't know why it'd return bad for me :s

Here's the HP from the screenie it left on the desktop;


riwu

2012-11-20 05:56:08

From: Le Jingle
I was using smart 7-2 so I don't know why it'd return bad for me :s

Here's the HP from the screenie it left on the desktop;


Just tested it, there are indeed something wrong with HpPercent:
GetClientDimensions(w,h);
writeln(StrToIntDef(GetNumbers(GetTextAtExWrap(0,0, w-1, h-1, 0, 4, 4, 255, 20, statChars)), -1));
Returned 4. It's not supposed to detect anything as the color in the argument is red but the hp text is green.

footballjds

2012-11-20 09:56:51

From: riwu
Just tested it, there are indeed something wrong with HpPercent:
GetClientDimensions(w,h);
writeln(StrToIntDef(GetNumbers(GetTextAtExWrap(0,0, w-1, h-1, 0, 4, 4, 255, 20, statChars)), -1));
Returned 4. It's not supposed to detect anything as the color in the argument is red but the hp text is green.


WOOT, called it

Plans of EoC?

footballjds

2012-12-05 17:19:43

hey riwu, plans for this script? don't die on us! :O

Le Jingle

2012-12-05 18:29:56

I think he mentioned something about school finals at one points? Or perhaps I'm confusing him with somebody else :s

Thought this was his miner; anyhow, looks like a fun script. :)