SoF Spell merchant faction(rk 2)

edit : exp back to 25% per run after server reset- go figure..
 
Last edited:
when i run this macro, there is a problem with claiming the reward for it ... therefore i can only run it once if im afk.error is as follows

DoCommand - Couldnt parse '/reward 1'
screw.mac@89 (turnin): /reward 1
screw.mac@29 (screwloose): /call turnin
screw.mac@15 (Main): /call screwloose

if i sit there and select the reward myself i can run it over and over, but that means i gotta sit at my computer ...

other than that ... this is an awsome mac.
 
do now ... thankyou ...

/em feels like a noob
 
Is this task repeatable? I tried the "Scouting Maiden's Grave" and I was not able to repeat the task, I have also heard you have to complete multiple tasks before the guy will give it to you again.
 
Is this task repeatable? I tried the "Scouting Maiden's Grave" and I was not able to repeat the task, I have also heard you have to complete multiple tasks before the guy will give it to you again.

Yes
Just for teh love of god , dont do it AFK
 
it's funny watching all the toons warp to the same spot and back all day long. c'mon people!
 
I just took out the warp and just stand there by the npc ...seem no one is doing this while I am and I bring up my map to watch for PC zoning in and getting close and end the macro..........
 
yar its folks like you who cause my detection scripts to go off and pause! I put into mine checks for players nearby the npc and nearby me. Also adjusted it to use /ubertrade and /saytarget. Then I just find a nice cozy place andgo play Rock Band!
 
Steelers, can you post that mac here? I would like to be able to be in remote part of the zone and be able to get this mission without warping? Can anyone add GM and PC detection?

I wonder if you warped under the world and was able to get the mission using /saytarget ?

Jenn
 
Edit'd it to warp to same spot , then up in teh sky. Uses ubertrade and /saytarget. Still a little buggy , but its my first attempt at editing :)
 

Attachments

  • faction.mac
    2.3 KB · Views: 43
Added in aa.inc support, along with PC check, and GM check.

Code:
#Event Update "Your task 'Screw Loose' has been updated."
#Event Reward "You have successfully been granted your reward for: Screw Loose"
#include aa.inc

Sub Main
	/declare sl int outer ${Param0}
	/declare turnin string outer
	/declare mytarget string outer
	/declare checkt int outer
	/declare times int outer
	/declare Itemset int outer
	/declare t int outer
	/declare slt int outer
	/declare repeatit int outer
	/declare Updatecnt int outer
	/declare got_reward  bool outer false
        /call getaaini
	/call Screwloose
/return
Sub Screwloose
	/for slt 1 to ${sl}
	/echo round ${slt} of ${sl}
	/target Tabazin
        /call AAbuy
        /call PCcheck
        /call GM
	/say Screw
	:waitA
	/if (!${Cursor.ID}) {
	/delay 1s
	/goto :waitA
	}
	/autoinv
	/call Repeatit
	/call turnin
	/next slt
	/call end
/return
Sub Repeatit
	/varset Updatecnt 0
	/varset repeatit 10
	|/warp loc 1883 -1180.5 405.5
	/delay 2s
	:looptime
	/for t 1 to ${repeatit}
        /call PCcheck
        /call GM
	/Cast Item "Sonic Screwdriver"
	:waitB
	/if (!${Cursor.ID}) {
	/delay 1s
	/goto :waitB
	}
	/autoinv
	/next t
	/if (${FindItemCount[Support Bolt]}<10) {
	/varcalc repeatit 10-${FindItemCount[Support Bolt]}
	/goto :looptime
	}
/return
Sub turnin
	/varset turnin "Support Bolt"
	/varset mytarget Tabazin
	/varset Itemset 2
	/varset times 4
	|/warp loc 85 -1482 373.5
	:itemloop
	/delay 1s
	/target ${mytarget}
	/face nolook
	/for t 1 to ${times}
	/nomodkey /ctrl /itemnotify ${FindItem[${turnin}].InvSlot} leftmouseup
	/click left target
	/delay 1s 
	/next t 
	/nomodkey /notify GiveWnd GVW_Give_Button leftmouseup 
	/delay 1s
	/doEvents Update
	/varcalc Itemset ${Itemset}-1
	/if (${Itemset}>0) /goto :itemloop
	/if (${Itemset}==0) {
	/varset times 2
	/goto :itemloop
	}
	/if (${Updatecnt}<20) {
	/varcalc times ${FindItemCount[Support Bolt]}
	/goto :itemloop
	}
	/nomodkey /ctrl /itemnotify ${FindItem[sonic].InvSlot} leftmouseup
	/click left target
	/delay 1s
	/nomodkey /notify GiveWnd GVW_Give_Button leftmouseup
	/delay 1s
	/doEvents Update
	/varset got_reward false
	:RewardLoop
	/reward 1
	/delay 1s
	/doEvents Reward
	/if (!${got_reward}) {
		/delay 1s
		/goto :RewardLoop
	}
/return
Sub Event_Update
	/varcalc Updatecnt ${Updatecnt}+1
/return
Sub Event_Reward
	/varset got_reward true
/return
Sub End
/endmacro
/return

Sub PCcheck
:PCcheck
/echo Performing PC radius check for cast/hail
/if (${SpawnCount[pc radius 125]} > 1) {                
    /echo PC's within 125 units, pausing 30 seconds.
    /delay 30s
    /goto :PCcheck
    }
/return

Sub GM 
:GM
/echo Performing GM zone check. 
/if (${Spawn[gm].ID}) {
    /echo GM in zone, pausing macro.
    /delay 300s
    /goto :GM
}  
/return    

Sub AAbuy
/call GetAA
}
/return

Now stop afk'ing next to me making my macro stop, and making it obvious you're doing something dumb. Also, there is an error that on occasion (lag maybe?) causes the task to skip and update...in turn spamming everybody around the quest giver with Tabazin Gearflinger says 'I have no need for this Soandso, you can have it back.' ...not a big deal when somebody is near him, but kindof a giveaway when you track Soandso to a nice comfy spot about 500 feet away.
 
heh I got a little over careless and left afk for a couple hours. Apparently, I got that little lag thing and was spamming for a few hours. Someone was nice enough to send me a tell and tell me to at least pretend to be nearby ;p
 
if your doing this while afk your pretty much asking for it
 
heh I got a little over careless and left afk for a couple hours. Apparently, I got that little lag thing and was spamming for a few hours. Someone was nice enough to send me a tell and tell me to at least pretend to be nearby ;p


That was me, stop that! =p
 
hahah thanks man

I think I worked out that lag thing too. Needed to change a few things.

Code:
#Event Update "Your task 'Screw Loose' has been updated."
#Event Reward "You have successfully been granted your reward for: Screw Loose"
#include aa.inc

Sub Main
	/declare sl int outer ${Param0}
	/declare turnin string outer
	/declare mytarget string outer
	/declare checkt int outer
	/declare times int outer
	/declare Itemset int outer
	/declare t int outer
	/declare slt int outer
	/declare repeatit int outer
	/declare Updatecnt int outer
	/declare got_reward  bool outer false
        /call getaaini
	/call Screwloose
/return
Sub Screwloose
	/for slt 1 to ${sl}
	/echo round ${slt} of ${sl}
	/target Tabazin
        /call AAbuy
        /call PCcheck
        /call GM
	/say Screw
	:waitA
	/if (!${Cursor.ID}) {
	/delay 1s
	/goto :waitA
	}
| MODIFIED
	/varset Updatecnt 0
	/varset repeatit 10
| END MODIFIED
	/autoinv
	/call Repeatit
| MODIFIED
	/doEvents Update
	/call ChkUpd
| END MODIFIED
	/call turnin
	/next slt
	/call end
/return
Sub Repeatit
	|/warp loc 1883 -1180.5 405.5
	/delay 2s
	:looptime
	/for t 1 to ${repeatit}
        /call PCcheck
        /call GM
	/Cast Item "Sonic Screwdriver"
	:waitB
	/if (!${Cursor.ID}) {
	/delay 1s
	/goto :waitB
	}
	/autoinv
	/next t
	/if (${FindItemCount[Support Bolt]}<10) {
	/varcalc repeatit 10-${FindItemCount[Support Bolt]}
	/goto :looptime
	}
/return

Sub ChkUpd
	/if (${Updatecnt} < 10) {
	/echo Repeating.  Only received ${Updatecnt} of 10 updates.
	/goto Repeatit
	}
	/if (${FindItemCount[Support Bolt]}>10) /goto End
	/if (${FindItemCount[Support Bolt]}<10) /goto Repeatit
/return

Sub turnin
	/varset turnin "Support Bolt"
	/varset mytarget Tabazin
	/varset Itemset 2
	/varset times 4
	|/warp loc 85 -1482 373.5
	:itemloop
	/delay 1s
	/target ${mytarget}
	/face nolook
	/for t 1 to ${times}
	/nomodkey /ctrl /itemnotify ${FindItem[${turnin}].InvSlot} leftmouseup
	/click left target
	/delay 1s 
	/next t 
	/nomodkey /notify GiveWnd GVW_Give_Button leftmouseup 
	/delay 1s
	/doEvents Update
	/varcalc Itemset ${Itemset}-1
	/if (${Itemset}>0) /goto :itemloop
	/if (${Itemset}==0) {
	/varset times 2
	/goto :itemloop
	}
	/if (${Updatecnt}<20) {
	/varcalc times ${FindItemCount[Support Bolt]}
	/goto :itemloop
	}
	/nomodkey /ctrl /itemnotify ${FindItem[sonic].InvSlot} leftmouseup
	/click left target
	/delay 1s
	/nomodkey /notify GiveWnd GVW_Give_Button leftmouseup
	/delay 1s
	/doEvents Update
	/varset got_reward false
	:RewardLoop
	/reward 1
	/delay 1s
	/doEvents Reward
	/if (!${got_reward}) {
		/delay 1s
		/goto :RewardLoop
	}
	|###  print progress
	/varcalc  aas       (((${Me.AAPointsTotal} - ${start_aas}) * 100) + (${Me.PctAAExp} - ${start_aaexp})) / 100
	/varcalc  aas_hr    ${aas} / (${Macro.RunTime} / 3600)	
	/echo Stats: AA Exp: ${aas}   AA Per Hour: ${aas_hr}
	/mqlog ${Time} Completed/Stats: AA Exp: ${aas}   AA Per Hour: ${aas_hr}
/return
Sub Event_Update
	/varcalc Updatecnt ${Updatecnt}+1
/return
Sub Event_Reward
	/varset got_reward true
/return
Sub End
/endmacro
/return

Sub PCcheck
:PCcheck
/echo Performing PC radius check for cast/hail
/if (${SpawnCount[pc radius 125]} > 1) {                
    /echo PC's within 125 units, pausing 30 seconds.
    /delay 30s
    /goto :PCcheck
    }
/return

Sub GM 
:GM
/echo Performing GM zone check. 
/if (${Spawn[gm].ID}) {
    /echo GM in zone, pausing macro.
    /delay 300s
    /goto :GM
}  
/return    

Sub AAbuy
/call GetAA
}
/return

I moved the update event call out of the click phase and added a call to check the number of actual updates. Then to be safe if you have more than the right number of screws it will exit ;p You can prolly comment that line out however.
 
so is this broke now its not casting the screw driver anymore
 
yes it gets mission warps to elevator area but then just stops. what plugins doese this require? And is it working still?
 
I'm still using the code I posted above, and everything still works fine.

Code:
[Sun Jan 20 13:20:31 2008] Your Sonic Screwdriver begins to glow.
[Sun Jan 20 13:20:41 2008] Your task 'Screw Loose' has been updated.

Only plugins I can think of that are required would be MQ2Reward and MQ2Cast...

I am using the Jan. 19th Compile though, possible the 20th Compile breaks MQ2Cast?
 
I am having problems with this also. I have the required plugins loaded, and like has been posted before, it gets the task, warps to the place, but doesn't cast. Interesting, when I try to case the Sonic Screwdriver manually it doesn't work either. Other clickes are working... any ideas?