Help - Search - Members - Calendar
Full Version: Rithwick potion money maker
AC Tools Everything Macro > AC Tool Macros > Asheron's Call Macros
Pages: 1, 2, 3, 4
Vellus
This is the original macro I used when I did not have a high enough item magic skill to use portal recalls. It does not use peas, and is not very efficient. For full profitability, you would need a 300 alchemy skill.


CODE

(****************************************************************************
****
version 1.0
This macro runs between the healer and the archmage to make infusions and potions

To get running, stand by the archmage, outside his by the welcome sign and hit F2

********************************************************************************
)


On a very rare occasion you can get stuck inside the healer's house or on the reeds in the river, that only occured to me once, but just in case, be forewarned!!


edit......
just to make sure, since with these boards this is bound to come up, but it uses commands that require the latest beta of 4.4.16 which is found here

4.4.16 beta 7
Amuk
Thanks for posting this Vellus.
Ive been watching for 1 for a while now, more just to mess with it than cause I need the money now.
Im going to try adding Martine's recall and nav into it and see how big a mess I can make :-)
should be fun.
Vellus
I have one already with the recalls, just not ready for release yet!!!

It uses Martine's and Samsur
Amuk
I see....well still something to play with. Im not new to tool, but I wouldn't be able to write what you have here from scratch either...I tried, got frustrated, gave up. So using what you have made and what I have from the Spike macros I should be able to make it work. I can already tell that it wouldnt be as efficent as someone who knows what they are doing. I'll prolly have quite a few extra lines of code that arent necessary for this macro that come from the other, and ive not had any success with spells in tool yet but am going to try again in your mac. Im just trying to figure some of this stuff out by messing around with it. Easy to most ya guys im sure but a fun chalange for me...till I fail....then its not fun...hehe
Toger
Any ETA on the next release?

Addition: I took you coding and modified it to use pea's and droughts, filling comps is at Martine's retreat.

Here is what it does...

Starts out by going to the healer then making a 50 Victeal infusions 2 claps
then buys the 50 droughts

Converts the Droughts to pots
sells them back

Once you have 350,000 pyreals it buys a note from the vendor accrost the way, i used the bridge to make it easy no more getting stuck on the weeds.

Out of comps it will run to martines retreat for comps nav in there recall back out and runs back to the vendor...

Average pyreals is 3 MMD notes per 7 hours

Not too bad if i optomized the code it could prolly get it faster.
Vellus
No real plans to release the suped up version, since I am worried about a nerf or another drastic reduction in the value of plats if this became popular.

Pyreal golem did this in the hopes to get things nerfed, and I never liked that type of action. Of course he spammed out production rates and stuff to really piss off people!! The macro in this thread is hardly efficient and I fealt it was not a big enough deal to warrant a nerf. The new version with the use of peas and recall spells, a lot more configuration, and the inclusion of plats coupled with a great increase in efficiency and profit, would probably bring back the anti-macro hysteria.
money_hungry
quit being an elitist and release it.
Toger
QUOTE
quit being an elitist and release it.


This is a great way to have him NOT release it. Why not take the code listed above and re-work it, it is really fun.
Ipa
QUOTE
quit being an elitist and release it.


That barely moved the needle on the troll-O-meter.

C'mon, if you're goin to make a name for yourself as a trolling lamer, at least use some l33t speak or cus words.
DaMOB
Yep, I read that idiot and couldn't believe it. So, Vellus is an elitist for something he worked hard in making for hisself and wanted to make sure the sins of the past are not repeated today. Hmmmm, where in the hell is the logic in that? I guess I should just consider the 1 post trolling moron source, then discount it and move along. *shrug*
Vellus
Yeah, I already called the national guard to let them know that another poster escaped from the vault (pun/sarcasm intended!!)
darksyko
this is a great start of a macro product thanks VELLUS for doing the work you have done with it.... Im trying to get to run a better but having problems not a macro problem its more of a AC pain it will stop in midst of running and do the scratch your head action and wont move again that turbine has built in( those bastards biggrin.gif ) still its awesome, I let it run attended and still make more than a applesauce one.

tried adding delays before the actually running to the mage/healer that stops most of them I ll get 1-3 run before a complete stop, any suggestions would be apprietated... tried adding the martine un to it given up totally on that. maybe someone will post theirs...whink whink nudge nudge cough*toger*
wacko.gif
Triane
This is the Martine's Holding navigation routine used by SpikeGolem. When it was written (last April) it was considered one of the stablest methods for getting from the LZ to Sialla (the archmage). I'm sure it could be adapted relatively easily.
CODE
//-------------------------------------------------------------------//
Procedure AtMartines
 If _pyreals < $WhatsItWorth // Not enough to buy even 1 plat
   Exit
 End

 While _heading < 268 or _heading > 272
   FaceHeading 270
 End

 Compute Temp1 = {elapsedmsec} DIV 1000
 SetConst Temp2 = 0
 While _y > -20 and $Temp2 < 20 // 20 second limit on side-stepping
   Keydown ~z 1.5 sec
   Compute Temp2 = ( {elapsedmsec} DIV 1000 ) - $Temp1
 End

 If $Temp2 >= 20 // Something went wrong
   SendText $Pink, Problems in Martine's! Retrying from scratch. (1)
   Exit
 End

 SelectGUID $JulianGUID | $MouseDelay
 If _selected <> $Julian // Didn't get him by GUID
   Select $Julian | $MouseDelay // try by Name...
   If _selected = $Julian // Got him
     SendText 13, (Re)Setting $Julian 's GUID to _selectedGUID
     SetConst JulianGUID = _selectedGUID // Redefine the GUID
   End
 End

 Keys $OpenVendorKey | 1 sec
 Compute Temp2 = {elapsedmsec} DIV 1000
 SetConst Temp3 = 0

 While _x > 96 and $Temp3 < 30 // 30 second limit to get to Julian
   Compute Temp1 = ( {elapsedmsec} DIV 1000 ) MOD 10
   Compute Temp3 = ( {elapsedmsec} DIV 1000 ) - $Temp2
   If $Temp1 = 0
     Keys $OpenVendorKey | 1 sec
   End
 End

 If $Temp3 >= 30 // Something went wrong
   SendText $Pink, Problems in Martine's! Retrying from scratch. (2)
   Exit
 End
 
 Call OpenSialla
 If $RestockComps = Yes
   Call RestockCompProc
 End

 If $WhatToBuy contains Trade Note
   Call BuyTradeNotes
 Else
   Call BuyPlatsOrPeas
 End

 Call Spam

 MoveAllItem $WhatToBuy, $PlatPack, 0, 1, $PrimaryPack // Stash our plats
 MoveAllITem Pyreal, $PyrealPack, 0, 1, $PrimaryPack   // Stash leftover pyreals
End


-Triane
Vellus
This is what I use. I have been meaning to do some location validations in case, but so far I have not needed it (knock on wood)

CODE

///////////////////////////////////////////////////////////////////////////////
// Run to the mage vendor
///////////////////////////////////////////////////////////////////////////////

procedure from_healer_to_mage
 
 //get to Martine's Retreat starting point
 call recall_to_retreat
 
 //walk to hallway
 while _y > -19
   keydown ~{up} 1 sec
 end
 //face mage (down hall)
 while _heading < 266 or _heading > 274
   faceheading 270 |333
 end
 //get mage in sight
 ToggleAutoRun ON
 while _x > 100
   delay 333
 end
 ToggleAutoRun OFF
 delay 1 sec
 //select healer and run to him
 call open_mage
 
end
DaMOB
You know I wonder if we could write bots in AC like we had in Quake? I swear it could be done in decal I just feel it because everytime you do anything the server sends you your /loc info and when the location packet comes across you could course correct. I know in my plugin I change the long loc to ns/ew coords but when I was writing it everytime I moved or twitched the server sent me my location.

Personally I would love to see an autokilling bot running all over the surface and evading and taking on stuff like a real player. Can you imagine Turbine's face if we had Quake bots in their game? I would roll over laughing if that happened.
Triane
The downsides to relying on coordinates is that you're susceptible to server lag. This was a HUGE issue with the Spike macros b/c lag in Martines was HORRIBLE. Because of this, the nav-routine I wrote uses fixed characters as much as possible (Julian Bartok and Sialla themselves) it also includes code to check for and recover from failures. Removing that extra makes the routine pretty slim, but leaves little room for failure:
CODE
//-------------------------------------------------------------------//
Procedure AtMartines
 While _heading < 268 or _heading > 272
   FaceHeading 270
 End

 While _y > -20
   Keydown ~z 1.5 sec
 End

 Select $Julian | $MouseDelay
 Keys $OpenVendorKey | 1 sec

 While _x > 96
   Compute Temp1 = ( {elapsedmsec} DIV 1000 ) MOD 10
   If $Temp1 = 0
     Keys $OpenVendorKey | 1 sec
   End
 End

 Select $Sialla | $MouseDelay
 Keys $OpenVendorKey | 1 sec

End

-Triane
DaMOB
Not quite Triane. Use a windows timer and every 150ms you check if the coords has changed and if so course correct when needed. I am over simplifying how it would be done but lag was in quakeworld as well on full servers and those bots stomped some serious booty (server or client side). If you break open the old c source code for the quakeworld bots and how they worked out lag issues (I think they used delta equations) something could be learned for now. smile.gif

Now I know how the nav worked in Martines and I remember why it was done but then we are speaking of Tool vs event driven Decal and that might make up for the fact why we had to rely upon "select BLAH/use BLAH" for navigation.

Oh, the coords we get from the game has more precision then we are seeing btw. I was amazed that 1/2 a step or just a tap my loc changed.
Triane
Lol -- Well, we are dealing with ACTool here, I don't know what's available to you on the C/Decal side of things, but we've always known that for utmost performance you have to go that route. However, this thread is relating to an ACT script in particular, where whatever's available in C doesn't help sad.gif

So, from the perspective of ACTool, I'm sure you noticed those timers? (the first was 20 seconds): There were times in Martines where that safety kicked in b/c even after 20 seconds, the macro hadn't received it's updated coordinates from the server and didn't know where it was, OR had already gone way past the endpoint. I can't imagine a nav routine waiting on real-time coordinates where the server updates can be SO far apart. Of course, there's been almost a year of updates since then, AND the lag in Martines was ESPECIALLY bad during the Spike craze, but it shows that it CAN be that bad.

-Triane
DaMOB
agreed and I remember going in there and red linking for my comps but I still would love for someone to try it. No coords updated for 1 sec STOP and wait for the server to tell you where you are at now (since the lag spike). Once it starts telling you again start back up. Would be an interesting test to see what we can do now.
Lamentingone
hey guys...

something happened after last patch. maybe you can explain?

when my bot recalls to Martine's Retreat he walks forward, just like he used to, then stops. doesn't even try to target the next NPC (down the hall to the right) like he always did. just stops cold until the server boots me

anyone know what's changed to make this happen?
Ipa
See FAQ: How do I report a bug?
Vellus
well......

Martine's is not part of the posted macro, so the problem lies with some custom work you added to it. Which nobody here has........

I have been running mine since decal came up and there are no problems in Martine's
JPH1121
got a question...how do you tell a char to move to certain X,Y coords? or is there even a way?
Triane
This is a routine for performing navigation in Martine's. It was written almost a year ago for the Spike Macro exploit, but it uses _x and _y positioning and shows how you can use it for navigation. For larger navigations (across landblocks) you'd use _ns and _ew as well as the _x and _y coordinates to navigate.
CODE
//-------------------------------------------------------------------//
Procedure AtMartines
 If _pyreals < $WhatsItWorth // Not enough to buy even 1 plat
   Exit
 End

 While _heading < 268 or _heading > 272
   FaceHeading 270
 End

 Compute Temp1 = {elapsedmsec} DIV 1000
 SetConst Temp2 = 0
 While _y > -20 and $Temp2 < 20 // 20 second limit on side-stepping
   Keydown ~z 1.5 sec
   Compute Temp2 = ( {elapsedmsec} DIV 1000 ) - $Temp1
 End

 If $Temp2 >= 20 // Something went wrong
   SendText $Pink, Problems in Martine's! Retrying from scratch. (1)
   Exit
 End

 SelectGUID $JulianGUID | $MouseDelay
 If _selected <> $Julian // Didn't get him by GUID
   Select $Julian | $MouseDelay // try by Name...
   If _selected = $Julian // Got him
     SendText 13, (Re)Setting $Julian 's GUID to _selectedGUID
     SetConst JulianGUID = _selectedGUID // Redefine the GUID
   End
 End

 Keys $OpenVendorKey | 1 sec
 Compute Temp2 = {elapsedmsec} DIV 1000
 SetConst Temp3 = 0

 While _x > 96 and $Temp3 < 30 // 30 second limit to get to Julian
   Compute Temp1 = ( {elapsedmsec} DIV 1000 ) MOD 10
   Compute Temp3 = ( {elapsedmsec} DIV 1000 ) - $Temp2
   If $Temp1 = 0
     Keys $OpenVendorKey | 1 sec
   End
 End

 If $Temp3 >= 30 // Something went wrong
   SendText $Pink, Problems in Martine's! Retrying from scratch. (2)
   Exit
 End
 
 Call OpenSialla
 If $RestockComps = Yes
   Call RestockCompProc
 End

 If $WhatToBuy contains Trade Note
   Call BuyTradeNotes
 Else
   Call BuyPlatsOrPeas
 End

 Call Spam

 MoveAllItem $WhatToBuy, $PlatPack, 0, 1, $PrimaryPack // Stash our plats
 MoveAllITem Pyreal, $PyrealPack, 0, 1, $PrimaryPack   // Stash leftover pyreals
End


-Triane
Vellus
there is no simple "run to x, y" command. You have to figure out where x,y is relative to where you are, face that direction, and run there.

In this macro, I simply went in game and faced the direction I wanted to go, did an /loc to see the heading. Then the macro uses faceheading to face that direction, runs until it reaches the appriopriate _x or _y coordinate, stops running. Repeats as necessary.

there is a nav include file around, that I beleive will calculate the heading for you and do this....
Triane
QUOTE
there is a nav include file around, that I beleive will calculate the heading for you and do this....


I believe "incNav2.mac" comes with ACTools (check your macro folder). There's also "BidiNav.mac", but it's getting somewhat dated by current ACTool standards.

For complex navigation over long distances, either of those macros will do a perfectly good job. For small navigational maneouvers, however, it's usually just as easy to do yourself, and possibly more efficient as well.

-Triane
Lamentingone
AC Tool 4.5
Decal 2.6.1.1
Windows XP Home

World Object Filter 2.6.1.1
Identity Que Filter 2.6.1.1
Spell FIlter 1.4.0.2
Imp Filter v2 2.8.0.12

here are my commands for this particular part:
Procedure BuyKit
Delay 500
Select Brisin the Healer
Keys $UseKey
MousePos $MerchItemTab
LeftClick //Click
VendorSelect Plain Healing Kit //Select Tails
//Click in the buy area
MousePos $EnterQuantity_X, $EnterQuantity_Y
LeftClick
MousePos $MerchBuy1

If _vendorselected = Plain Healing Kit
LeftClick //Click
End


well.. everything was working perfectly until last patch (yesterday), now when i get to the healer to begin crafting the potions, my bot opens the healer's inventory then "ignores" how many kits i already have in inventory

he selects the healing kit, then selects the "buy item" green box, then the mouse curser moves to the bottom right of the screen where the name of the healing kit is displayed, then back to the healer, then back to the healing kit for sale, then back to the "buy item" green box, on and on and on in an eternal circle, but never actually buys a kit, therefore putting me in an eternal loop tongue.gif

there are no error messages at all, and what's even more confusing to me is that i don't understand why he's trying to buy kits now, when i have like 8 in inventory

i know i sound partially retarded, here. sorry for that. my brother customized the macro for me (i had no hand in it's creation) but he moved and doesn't play AC anymore, so i'm trying to understand how the entirety of the thing works, while at the same time trying to fix it

i've so far been able to understand a bit, and tweak the way the bot runs around and such, but this part has stumped me completely sad.gif

i really really appreciate any advice you might have to offer smile.gif
Vellus
wait for IPA or Cam to fix ACTools. The decal devs made a change to the approach vendor memlocs.

What it is doing right now is not being able to select the potions, so it buys the first item, which happens to be the healing kits.
Ipa
I have fixed it.
Look for a Companion release to update 4.5.4 later this evening.

Lamentingone
you guys are too cool..

can i donate? <3
Lamentingone
ok.. the day after. naturally, i was too stupid to realize it was trying to buy the potions. after updating to 4.5.4 and the Feb Patch Fix from last night, it started out perfectly

ran to the healer, opened the trade window, bought the potions and resumed crafting them

however.. when he ran out of kits, he was unable to buy more kits. the same loop as i described before was going on, only this time about 5 times faster. is there some sort of Delay i'm possibly missing? it was cycling through selecting healing kits, and then the arrow "flashes" on the "buy item" green tab, then back to the bottom right of the window, and back to the healer, and back to the kits and so on

as before, there were no errors, just an endless "selecting" loop
Vellus
the only time I saw this is when I was not actually able to buy the kits. In the time I found it, someone had loaded me down with hyssop because I was stupid enough to have played the toon for a bit and forgot to turn off accept items. So when I went to buy the kits, I had no room!! The macro kept looping to buy them since I had none.

Another possibility is you do not have enough pyreals to buy them.

Or you are overburdenned.

An idea would be to get your "brother" to come back to the game and fix his custom work, or to use the one I released.
Lamentingone
well, good points smile.gif

i checked everything, and watched it over and over, and i'm definitely not overburdened or out of pyreals. the macro simply won't buy the kit after selecting it

i suppose i'll give yours a whirl when i get home, tonight smile.gif

ther reason my brother had to tweak it in the first place was because we were working with lvl 40 trade mules at the time and they were somewhat "limited" in ability

now they're closing in on lvl 110, selfbuffing 7's (dry) and quite wondrous
Vellus
just making sure here, but you only ruled out 2 of the three things I mentioned. Do you have enough packspace in your main pack?

If you are trying to buy 8 kits and only have 7 free slots, then you will never buy them, and never leave the buy_kits procedure. This can happen if you set the number of potions to make too high, or if you have other items taking up space in your main pack.
Lamentingone
oops, sorry:/

yes, have like 67 spaces
Vellus
ok, why did you replace the buy_kits procedure in the macro with that one? Healing kits can only be bought one at a time, not in stacks. You are using a stacked buying procedure. Clicking on the enter quantity area and going that route will throw things off. It will actually activate the chat area where you would need to type in some words. Then when you are clicking on the buy button, you are actually just turning off the chat and not clicking the buy button.

To be blunt, your custom macro does not work because the person doing the customization did not know what they were doing!!!
Lamentingone
it was his first attempt tongue.gif

seems i learn faster by tweaking things, rather than starting from scratch, so i thought i'd give it a try

as far as that procedure he has in there, i have no idea why it is like that

that which you've created on Page 1 of this thread, is that the latest?
Vellus
yes it is.
Jadin101
Nm...got it working.
Maglore
guys, i think i got a problem, my macro always stop near the archmage in rithwic, log off, and its always when he done all the infusions and made 2 mmd any idea what should be the problem ??

Decal 2.6.1.1
AC TOOL 4.5.5.0
imp filter 28012
spell filter 1402

and i use the first macro posted on page one, the first post

someone can help me out ??
Maglore
plz guys
Vellus
Few questions.

Does it make it to the mage vendor at all?
Does it actually buy the notes?
Does it stop right after buying the note, or after it stacks them in the notepack?
Does it buy the realgar?
Does it log out from inactivity or does the macro actually log out the character?
Maglore
yea, it goes to the mage, i means run to there, it buy the realgar, stack pyreals, make victuals, when he got 350K, it buy the note, but i think the macro log him off cuz when i hit Alt+Tab after he logged, the macro still run, always on loop. he log off when he made all infusions run like 2 feets, and log off, He only make 2 MMD and log off always, sometimes, 1 mmd
Vellus
well it cannot be the macro logging you off, since the second last line of code is the only place it does. If this happenned, your macro would be over when you alt-tabbed.

if the macro is still running, there should be a fourth tab called debug. What is in the column for call stack?

do you have any other plugins running?

Maglore
no plug-in running axept AC Tool, and whats the debugg thing ??
Ipa
QUOTE
and whats the debugg thing ??


See attached image.
Maglore
what whould i see in this debud thing ?? huh.gif

could u tell me what i should see if the macro works fine ??
Toger
When the macro is running it sould give you all the running variables, but when i stops and loggs out alt tab and look at that debug tab and see what it says
Vellus
if the macro is still running as claimed, then this might give an indication of where it is. If the macro had stopped normally, then the debug tab will not be there.

If the macro is still running, pause it, not stop it, and then copy and paste what is on the screen. Hopefully it can point to a constant or called procedure.

But looking at the number of downloads and then a quick check on a few servers, the macro is working fine?
Maglore
ok, thanks, ill post what it says, when ill get home, ill post it here to get this macro work normally
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2010 Invision Power Services, Inc.