Warrior Macros

by Isuka

Back to Mechanic's Corner.

Isuka2009-02-13 19:57:56
I'm curious as to how other warriors set up their macros. I'm a pureblade, and it seems like for every limb I have I need a full set of macros. One for a basic jab and slashing maneuver, possibly a cleave, and any number of maneuvers.

For example: Right Leg.
Strike Rleg
Slash Right
Cleave rleg
Maneuver: LegTendon
Maneuver: AmputateLeg

That's five right there, and some of the limbs have even more than that... how do you do it?
I've tried using the keypad and having each key link to a limb. So Keypad1 is left leg and so forth, then using varying states of ctrl, alt and shift... but sometimes it seems like even that isn't enough.

Plus... I've taken to playing on my laptop... which doesn't have a keypad save for the function keys, which do not map to Numpad keys... just to regular numbers. So I'm functionally out of my keypad idea.

Advice! I beg of you!

Edit: I've thought of using accelerators with regular keys to emulate the keypad, so that "CTRL+O" would be the head for example, but this leaves me a bit lacking. One, i lose the non-modified version of the keypress. Two: I lose the shift modifier. This doesn't seem to be a good solution.
Everiine2009-02-13 20:02:28
I just shorten everything and pray I remember it biggrin.gif. I currently have thirty macros used in combat, and that list is about to expand. The important thing is to make them intuitive for you. For example, my most common head attack is just "h". However, if I want to lunge, it's "hl", for head attack + lunge. It makes sense to me, and that's why I use it. I tried the keypad and function keys and could never remember which ones did what. It also helps to make a list on paper so that if you forget one you can quickly find it.
Isuka2009-02-13 20:07:14
QUOTE (Everiine @ Feb 13 2009, 12:02 PM) <{POST_SNAPBACK}>
I just shorten everything and pray I remember it biggrin.gif. I currently have thirty macros used in combat, and that list is about to expand. The important thing is to make them intuitive for you. For example, my most common head attack is just "h". However, if I want to lunge, it's "hl", for head attack + lunge. It makes sense to me, and that's why I use it. I tried the keypad and function keys and could never remember which ones did what. It also helps to make a list on paper so that if you forget one you can quickly find it.


It sounds like you're just using aliases, then, right? Not actually using macros?
Rika2009-02-13 20:09:13
Whatever you decide to do, try to make it simple for yourself. At first, things will be really hard to get used to (I had to do this when I converted from Cmud to Mush), but after a while, the macros will get embedded into your memory.
Desitrus2009-02-13 20:11:19
QUOTE (Isuka @ Feb 13 2009, 01:57 PM) <{POST_SNAPBACK}>
I'm curious as to how other warriors set up their macros. I'm a pureblade, and it seems like for every limb I have I need a full set of macros. One for a basic jab and slashing maneuver, possibly a cleave, and any number of maneuvers.

For example: Right Leg.
Strike Rleg
Slash Right
Cleave rleg
Maneuver: LegTendon
Maneuver: AmputateLeg

That's five right there, and some of the limbs have even more than that... how do you do it?
I've tried using the keypad and having each key link to a limb. So Keypad1 is left leg and so forth, then using varying states of ctrl, alt and shift... but sometimes it seems like even that isn't enough.

Plus... I've taken to playing on my laptop... which doesn't have a keypad save for the function keys, which do not map to Numpad keys... just to regular numbers. So I'm functionally out of my keypad idea.

Advice! I beg of you!

Edit: I've thought of using accelerators with regular keys to emulate the keypad, so that "CTRL+O" would be the head for example, but this leaves me a bit lacking. One, i lose the non-modified version of the keypress. Two: I lose the shift modifier. This doesn't seem to be a good solution.


My keypad is set like a paper-doll. Let's say 1 is left leg. Plus is my mode toggle, changes between normal swing/jab. As pureblade my autorazer tells me whether the action is jab/cleave or raze/swing. That's normal keypress. Control - 1 is always assault. Alt-control-1 is beast web/assault. 0 is Left Leg tendon only maneuvers for jab/assault with control mods once again. You can see how you'd do that all around. As a pureblade, you really only need two maneuvers. One that does sliceear/openchest/behead and one that does tendon/artery/pierceleg.
Isuka2009-02-13 20:19:25
QUOTE (rika @ Feb 13 2009, 12:09 PM) <{POST_SNAPBACK}>
Whatever you decide to do, try to make it simple for yourself. At first, things will be really hard to get used to (I had to do this when I converted from Cmud to Mush), but after a while, the macros will get embedded into your memory.


My old warrior system was written in TinyFugue, and I loved the way I had my macros set up. It worked very well for me. Sadly, I've reworked the way I do maneuvers, and it's included several more macros...
Everiine2009-02-13 20:23:04
QUOTE (Isuka @ Feb 13 2009, 03:07 PM) <{POST_SNAPBACK}>
It sounds like you're just using aliases, then, right? Not actually using macros?


Yeah, I use aliases because I couldn't remember my macros tongue.gif. Sorry, forgot that's what you were looking for.
Desitrus2009-02-13 20:24:40
QUOTE (Isuka @ Feb 13 2009, 02:19 PM) <{POST_SNAPBACK}>
My old warrior system was written in TinyFugue, and I loved the way I had my macros set up. It worked very well for me. Sadly, I've reworked the way I do maneuvers, and it's included several more macros...


Did you happen to catch the large post where I explained wounds and what is/isn't possible with them? I think it will eliminate a lot of your maneuvers.
Everiine2009-02-13 20:26:02
You really don't need many maneuvers. Right now I have but one, because there's not a lot of point to the others (I'll pick up another when I trans the skill). They aren't all that helpful in most situations, I've discovered.
Desitrus2009-02-13 20:27:54
QUOTE (Everiine @ Feb 13 2009, 02:26 PM) <{POST_SNAPBACK}>
You really don't need many maneuvers. Right now I have but one, because there's not a lot of point to the others (I'll pick up another when I trans the skill). They aren't all that helpful in most situations, I've discovered.


The only time you should be using a maneuver is when you want a lower wound in place of a higher one. That's their only purpose.
Isuka2009-02-13 20:34:22
QUOTE (Desitrus @ Feb 13 2009, 12:11 PM) <{POST_SNAPBACK}>
My keypad is set like a paper-doll. Let's say 1 is left leg. Plus is my mode toggle, changes between normal swing/jab. As pureblade my autorazer tells me whether the action is jab/cleave or raze/swing. That's normal keypress. Control - 1 is always assault. Alt-control-1 is beast web/assault. 0 is Left Leg tendon only maneuvers for jab/assault with control mods once again. You can see how you'd do that all around. As a pureblade, you really only need two maneuvers. One that does sliceear/openchest/behead and one that does tendon/artery/pierceleg.


Ok, so I see that you have your system automatically handling the conversion from raze/cleave to attack. That's a great idea, which I'll implement when I have all of the triggers needed for it. Using a toggle to go from Jab to Swing is also a great idea. That cuts down on the needed macros greatly.

As for maneuvers: how do you handle things like amputateleg/arm, severphrenic, rupturestomach and so forth?

edit: ninja'd on that one...

So why use one maneuver to try for three different things? I know you said for tendon/artery/pierceleg on one maneuver, right?
Rika2009-02-13 20:38:03
Hey, that's a great idea, Desitrus. Totally stealing that. Now, to figure out how to work it.
Desitrus2009-02-13 20:45:10
QUOTE (Isuka @ Feb 13 2009, 02:34 PM) <{POST_SNAPBACK}>
Ok, so I see that you have your system automatically handling the conversion from raze/cleave to attack. That's a great idea, which I'll implement when I have all of the triggers needed for it. Using a toggle to go from Jab to Swing is also a great idea. That cuts down on the needed macros greatly.

As for maneuvers: how do you handle things like amputateleg/arm, severphrenic, rupturestomach and so forth?

edit: ninja'd on that one...

So why use one maneuver to try for three different things? I know you said for tendon/artery/pierceleg on one maneuver, right?


Guess you missed that other post! Anyway, think of wounds/afflictions like this:

Wound level is the high limit which every hit rolls a random number against. This random number determines the given affliction. An affliction has a listed wound level, this means that (unless it's something like bonecrusher leg mangle which can be given if leg is broken with no regard to wound level) the random number has to be above X amount. This is why you can get heavy wounds on someone, but still get medium afflictions. If they have 1400 wounds, the range for the heavy affliction is only 1200-1400, any other number gives something else. One thing to remember though, is that a lower wound can NEVER overwrite a higher wound if both are possible. You can't roll 1300 and get a 600 wounding affliction. It will always go to the highest wound affliction possible for that roll.

Enter Maneuvers. Take axelord for example. Knockdown is a light wound. It's also the go-to attack for axelords. You can't just generic jab/assault because you are going to constantly get to medium or higher and overwrite knockdown every time. So, you want a maneuver that only does legartery and knockdown. You always want to include LOWER wounds in your maneuvers because a maneuver will ONLY give the afflictions listed. If you end up HITTING a lower wound, you wouldn't have gotten the higher wound anyway because your random number was too low. RNG combat baby.
Daganev2009-02-13 20:46:04
I would suggest putting some logic into your macros. That way you can reduce the number of them.

For example, keep track if you need to use power to attack or not, or keep track of whatafflictions they allready have. Then have your macro do a different attack based on what part of the fight you are in.
Desitrus2009-02-13 20:49:54
I also forgot to mention if you want to make maneuvers that involve specific body parts, you can include other body parts in those maneuvers and re-use them. Say you have a maneuver as an axelord that does ringingear and one that does knockdown. Both use jab, so you can throw both in the same maneuver, it will just give the body-party appropriate wound when used on that body-part.
Unknown2009-02-13 21:02:15
Somebody should let Desitrus should rewrite the maneuvers ab file and/or the help file for deepwounds ninja.gif
Rika2009-02-13 21:08:09
Seconded!
Vathael2009-02-13 21:09:47
#KEY ALT-CTRL-KEY9 {#if (!%iskey( @lost_bals, rightarm)) {env mantakaya;maneuver perform bb down @target};#if (%iskey( @lost_bals, rightarm) and !%iskey( @lost_bals, leftarm)) {env null mantakaya;maneuver perform bb down @target}} "KnightCombat|RandomVenoms"

#KEY CTRL-PGDN {env ibululu ibululu;maneuver perform pkd @target rleg;maneuver perform pkd @target rleg} "KnightCombat|RandomVenoms"

#KEY ALT-CTRL-KEY8 {env mantakaya senso;crush @target head;maneuver perform bb down @target} "KnightCombat|RandomVenoms"

#KEY ALT-CTRL-KEY4 {env mantakaya dulak;strike @target larm;maneuver perform bb down @target} "KnightCombat|RandomVenoms"

#KEY CTRL-KEY8 {env chansu senso;strike @target head;strike @target head} "KnightCombat|RandomVenoms"

A few examples of mine. All numpad macros env is an envenom alias to envenom specific weapons with specific poisons for a more controlled venom use. All CTRL+whatever attacks are normal strikes/smites all CTRL+SHIFT (turns out to be CTRL-PGDN) attacks are crushes and CTRL+ALT attacks are all various combos that hit different limbs for some diversity. Pretty simple if you ask me.

EDIT: In regards to cleave, you could make rebound triggers that sets a variable to something and then when that variable is 1 in your attack macro it would do a cleave instead of if the variable was 0 where it would be a normal strike.

EDIT2: Oh, missed the part about being on laptop. I used to just plug in a keyboard into my laptop cause I can't do anything without keypad. :/ The USB Numpads are terrible btw. Could do something with the F# keys I guess and just.. make the best out of it that you can.
Isuka2009-02-13 21:22:04
QUOTE (Desitrus @ Feb 13 2009, 12:45 PM) <{POST_SNAPBACK}>
Guess you missed that other post! Anyway, think of wounds/afflictions like this:

Wound level is the high limit which every hit rolls a random number against. This random number determines the given affliction. An affliction has a listed wound level, this means that (unless it's something like bonecrusher leg mangle which can be given if leg is broken with no regard to wound level) the random number has to be above X amount. This is why you can get heavy wounds on someone, but still get medium afflictions. If they have 1400 wounds, the range for the heavy affliction is only 1200-1400, any other number gives something else. One thing to remember though, is that a lower wound can NEVER overwrite a higher wound if both are possible. You can't roll 1300 and get a 600 wounding affliction. It will always go to the highest wound affliction possible for that roll.

Enter Maneuvers. Take axelord for example. Knockdown is a light wound. It's also the go-to attack for axelords. You can't just generic jab/assault because you are going to constantly get to medium or higher and overwrite knockdown every time. So, you want a maneuver that only does legartery and knockdown. You always want to include LOWER wounds in your maneuvers because a maneuver will ONLY give the afflictions listed. If you end up HITTING a lower wound, you wouldn't have gotten the higher wound anyway because your random number was too low. RNG combat baby.



All right, I think that I understand now. So whenever I hit with my sword a function is run like this:
wnd = random(i,x)
where x is the current wound level for that limb, and i defaults to 1.
then another call is made to get the first wound for that limb that is <= wnd.

By using a maneuver, I essentially tell the system that
i = the wound requirement of my lowest wound on the list, and
x = the wound requirement of my highest wound on the list IF the limb has at least that much wounding, or doesn't change.
so only roll from 1000 to 2000, rather than 1 to 5000 for example.

Am I right?
Desitrus2009-02-13 21:25:13
QUOTE (Isuka @ Feb 13 2009, 03:22 PM) <{POST_SNAPBACK}>
All right, I think that I understand now. So whenever I hit with my sword a function is run like this:
wnd = random(i,x)
where x is the current wound level for that limb, and i defaults to 1.
then another call is made to get the first wound for that limb that is <= wnd.

By using a maneuver, I essentially tell the system that
i = the wound requirement of my lowest wound on the list, and
x = the wound requirement of my highest wound on the list IF the limb has at least that much wounding, or doesn't change.
so only roll from 1000 to 2000, rather than 1 to 5000 for example.

Am I right?


No. If your lowest wound on the list is 1000 and you roll a 20, you get nothing, which is why you always want to include lower wounds in maneuvers if they are below what the maneuver is actually going for.

Edit: Yes, you can hit and get nothing, not even the junk that requires 100 wounds.