Solo rogue Backstab script

Macro requests from before the user variable changes that broke all macros

Moderator: MacroQuest Developers

do_know_a_little
RTFM, then ask again
Posts: 19
Joined: Thu Jun 26, 2003 1:26 pm

Solo rogue Backstab script

Post by do_know_a_little » Mon Jul 07, 2003 5:46 am

I know people who can solo with their rogues by circles strafing and such, and I thought hey what a great idea for a script, I'm thinking its not something you leave on. You fight the mob and everytime the backstab button pops up you push a hotkey(something like /macro /endmacro).
It would circle strafe your quickly around your target and automatically backstab it. You guys are the geniuses.
Thanks
I love you guys.

User avatar
Kint
a hill giant
a hill giant
Posts: 208
Joined: Thu Mar 13, 2003 3:36 am

Post by Kint » Mon Jul 07, 2003 12:23 pm

sub Main
/goto :wait
/return

:wait

/if n $char(ability,"Backstab")!=-2 /goto :backstab
/goto :wait

:backstab
/face fast nopredict
/sendkey down up
/delay .5s |may need to tweak delay
/sendkey up up
/face fast nopredict
/doability "Backstab"
/goto :wait


something like this probably would work. This will move you forward for 1 second and then make you face the back of the mob (don't do this with lots of people around) then it will backstab it every time backstab pops
EDIT:try this, I'll try and make a strafe one, will take some calculating
Last edited by Kint on Mon Jul 07, 2003 4:20 pm, edited 2 times in total.

do_know_a_little
RTFM, then ask again
Posts: 19
Joined: Thu Jun 26, 2003 1:26 pm

Post by do_know_a_little » Mon Jul 07, 2003 1:03 pm

subroutine not found 'backstab'
I add the word Sub, maybe that'll make it work. checking.....
didn't work obviously I don't know what I'm doing...
I love you guys.

do_know_a_little
RTFM, then ask again
Posts: 19
Joined: Thu Jun 26, 2003 1:26 pm

Post by do_know_a_little » Mon Jul 07, 2003 1:22 pm

changed /call backstab to /goto backstab checking...
I love you guys.

do_know_a_little
RTFM, then ask again
Posts: 19
Joined: Thu Jun 26, 2003 1:26 pm

Post by do_know_a_little » Mon Jul 07, 2003 1:42 pm

it works only i run forward too far i think. also if another way to apporoach it would be to keep locked on to the target and sidestep sround to the back perhaps? im going to change th delay on you script and see how it works.
I love you guys.

User avatar
Kint
a hill giant
a hill giant
Posts: 208
Joined: Thu Mar 13, 2003 3:36 am

strafe

Post by Kint » Mon Jul 07, 2003 6:13 pm

this is what I have so far for the strafe/BS macro

Code: Select all

sub Main 
/goto :wait 
/return 

:wait 

/if n $char(ability,"Backstab")!=-2 /goto :position
/goto :wait 

:position
      /varset v0 $target(heading)
/varcalc v1 $v0+485
/varcalc v2 $v0+515
/goto :positionsub
:positionsub
/varcalc v3 $char(heading)+500
/sendkey down ctrl
      /if n $target(distance)>40 /sendkey down up
      /if n $target(distance)<20 /sendkey up up
      /face fast
/if n "$v3"<"$v1"||"$v3">"$v2") /sendkey down left
/if n ("$v3"=>"$v1"&&"$v3"<="$v2") /goto :backstab
/goto :positionsub

:backstab 
/sendkey up ctrl
/sendkey up left
/echo $v0 target heading
/echo $v1 target heading +485
/echo $v2 target heading +515
/echo $v3 my heading
|/doability "Backstab" 
/echo backstabin!
/end
/goto :wait 

the /echo code at the bottom is just a little debugging I was doing. This code doesn't exactly work. it seems to pass the code to :backstab no matter what. Can anyone see what I'm doing wrong?

somemage
a lesser mummy
a lesser mummy
Posts: 35
Joined: Mon May 12, 2003 7:44 pm

Post by somemage » Mon Jul 07, 2003 6:54 pm

Neatened it up a bit and fixed a few problems I could see.

Code: Select all

#turbo 25

sub Main
    :wait
    /if n $char(ability,"Backstab")!=-2 /goto :position
    /goto :wait

    :position
    /varset v0 $target(heading)
    /varcalc v1 $v0+485
    /varcalc v2 $v0+515

    :positionsub
    /varcalc v3 $char(heading)+500
    /sendkey down ctrl
    /if n $target(distance)>40 /sendkey down up
    /if n $target(distance)<20 /sendkey up up
    /face fast
    /if n ("$v3"<"$v1"||"$v3">"$v2") /sendkey down left
    /if n ("$v3">="$v1"&&"$v3"<="$v2") /goto :backstab
    /goto :positionsub

    :backstab
    /sendkey up ctrl
    /sendkey up left
    /echo $v0 target heading
    /echo $v1 target heading +485
    /echo $v2 target heading +515
    /echo $v3 my heading
    /doability "Backstab"
    /echo backstabin!

    /goto :wait   
/return

do_know_a_little
RTFM, then ask again
Posts: 19
Joined: Thu Jun 26, 2003 1:26 pm

Post by do_know_a_little » Mon Jul 07, 2003 7:52 pm

It doesn't work I am locked on to it and the strafe modifier is on, but it I don't go around and stab the back. just stand there.
I love you guys.

somemage
a lesser mummy
a lesser mummy
Posts: 35
Joined: Mon May 12, 2003 7:44 pm

Post by somemage » Tue Jul 08, 2003 7:33 am

Eh, I can't exactly test it out (my pet would just look at me funny). Have you tried using the code half way down this page:
http://macroquest2.com/phpBB2/viewtopic.php?t=2296

User avatar
Kint
a hill giant
a hill giant
Posts: 208
Joined: Thu Mar 13, 2003 3:36 am

Post by Kint » Wed Jul 09, 2003 10:05 am

Code: Select all

|gets behind a target and backstabs. 
|the moving behind the target was taken from grijack's movebehind.mac |

| movebehind.mac 
| moves you behind current target and faces. 
| Many parts where or are taken from macroquest2.com in the 
| macro depot 

#turbo 25 

sub Main 
    /varset v1 $p0
    /if "$p0"=="" {
    /varset v1 7.5s
    /echo you can define the amount of time for your BS refresh: /macro backstab 7.5s. The default timer is 7.6 seconds.
    }
    :wait 
    /if n $t1==0 /goto :position
    /goto :wait 

    :position 
/if n $distance($calc($target(y)-$cos($target(heading))*10),$calc($target(x)-$sin($target(heading))*10))<3 /goto :doublecheck 
   /sendkey down up 
   :gotopointloop  
   /if $target()==FALSE { 
      /attack off 
      /sendkey up up 
      /goto :wait 
   } 
   /face fast loc $calc($target(y)-$cos($target(heading))*10),$calc($target(x)-$sin($target(heading))*10) 
   /if n $distance($calc($target(y)-$cos($target(heading))*10),$calc($target(x)-$sin($target(heading))*10))>1 /goto :gotopointloop 
   /sendkey up up 
   /face fast nopredict 
   /goto :doublecheck
   
   :doublecheck
   /if n $distance($calc($target(y)-$cos($target(heading))*10),$calc($target(x)-$sin($target(heading))*10))<10 /goto :backstab
   /goto :position

    :backstab 
    /sendkey up ctrl 
    /sendkey up left 
    /if $t1==0 {
    /doability "Backstab"
    /varset t1 $v1
    } 
    /goto :wait    
/return

||||just some of my old code which I don't want to delete|||
|***
/if n "$abs($calc($calc($target(heading)+500)-$calc($char(heading)+500)))"<="40" {
/if "$target(distance)"<="15" /echo yup 
}
/echo "$abs($calc($calc($target(heading)+500)-$calc($char(heading)+500)))"<="40" && "$target(distance)"<="15"
**|
this one works correctly(tested). Unfortunatley, it can't do what you want it to do, whoch is get behind the mob and BS it solo. Infact, I don't think that's possible. By hand I ran behind my mob and typed /face fast, and then hit backstab. It didn't even think I was behind the mob. If you were to maybe stun the mob, or catch it casting, this one would work, but other then that no solo BSing.

this uses grimjacks getbehind system (would never have though to use trig). it will BS every 7.6 seconds if you're behind the mob.

User avatar
grimjack
Macro Author
Macro Author
Posts: 525
Joined: Thu Nov 07, 2002 6:51 am
Contact:

Post by grimjack » Wed Jul 09, 2003 10:15 am

Kint wrote:this one works correctly(tested). Unfortunatley, it can't do what you want it to do, whoch is get behind the mob and BS it solo. Infact, I don't think that's possible. By hand I ran behind my mob and typed /face fast, and then hit backstab. It didn't even think I was behind the mob. If you were to maybe stun the mob, or catch it casting, this one would work, but other then that no solo BSing.

this uses grimjacks getbehind system (would never have though to use trig). it will BS every 7.6 seconds if you're behind the mob.
Just so you know, I did not come up with that. I got it from this post.
http://macroquest2.com/phpBB2/viewtopic ... ght=behind
The reply by L124RD. I just modified it to my needs.

Thanks
GrimJack[/url]
When they come to me, they're in trouble, or they want some. I bust people out of prison, hunt down vampires, fight alien gods -- All the fun jobs people are too squeamish or too polite to do themselves.

Call me a mercenary. Call me an assassin. Call me a villain. I am all that and more.

My name's John Gaunt, but out on the streets of Cynosure, I am called...
GrimJack