Diary of a MultiBoxer

  • November 2008 - Posts

    Sidetracked!

    Hoo boy... It turns out that the same horrible case of Attention Deficit Disorder that makes me have this burning need to Triple-box WOW has thrown me a loop.

    Yes friends, I'm talking about the one thing that is possibly more addictive (for me) than Warcraft: writing code.

    By job title, I'm a software engineer, but I always think of myself as "software janitor". This is because I tend to do the programming equivelent of "cleanup on aisle seven"

    So, for the longest time, I have been poking at other people's addons, occasionally tweaking things for my own personal use/amusement. Well, when WOW had that major outage on Tuesday (the extended maintenance that made the game unavailable for the whole day, I just diverted all my WoW playing energy into starting my own addon.

    It's called MultiTool.

    The idea is that there are a lot of little things that can make the lives of us Multi Boxers a little easier: quest share/gossip cloning, auto repair, taxi following, automatic escort quest accepts, etc...

    My approach has been to download addons that help out with these tasks, but as of late, I've been noticing that a lot of the creature comforts have been found at the cost of having lots of addons where I don't use most of the features, or where I don't like the implementation (for my use... not that they're bad addons, it's just personal choice), or worse, are really great, but are not being maintained anymore.

    Long-story-short, I decided that I'd take a whack at making the addon taht I'd like... written using a well-supported framework that has a core philosophy of being fully embeddable and staying light-weight. Ok, actually, I thought I'd take a whack at converting Smurfy's MultiBoxer addon to be Ace3, but as I dug into the code, I realized it was using a lot of LibRock which has a (in my opinion) rather heavy footprint, and that Ace2 to Ace3 conversion would be kind of painful.

    Oh, that wasn't short.

    Right. So I made MultiTool.

    It's currently only in Alpha which means that if you like the sounds of it, you'll have to download it from my curseforge site since Alpha releases don't syndicate here to Curse.

    I'm actively using it for the Cancel Duels and Taxi follow features right now, and I plan on adding some of the other things that I find I can't live without.

    Anyhow, I'm going back to leveling my three mains to 80, until I get distracted by wanting some new feature in my .. OOH SHINY! ~carrier lost~

     

    Macros - MultiBoxer Bread and Butter

    First two posts, I talked about My own junk... my toon setup and my computer/software setup. Oh, those were fun times.. real romps through the backroads of my ego.

    Ok, well, I DID slip in some educational stuff there.. along the lines of 'here's what I do'. Anyway, I thought I'd be a bit more helpful this time... giving some actual examples about one of my favorite subjects: Macros.

    (Effectively) multiboxing would not be possible without the built-in Warcraft "follow" command and the ability to make macros.

    Inviter

    I've got a macro I call "inviter" that I keep in my general macros area on all my toons. Here's a pseudocode example (A1 stands for account 1, A2 for account  2 and so-on)... this assumes I'm running from account 1:

    /invite A2_TOON1
    /invite A2_TOON2
    /invite A3_TOON1
    /invite A#_TOON2
    /ffa

    When I hit this button, it tries to invite everyone at once and set loot to Free for all. In effect, whichever toons I have logged on on accounts 2 and 3 will get the invite, and the /ffa will fail because I have no group. I accept on account 2 and 3, then hit the inviter again. It will fail because the toons are either in my group already or not online, and the free for all will catch.
     
    So, hit button, accept on 2 and 3 and hit it again for a ready to go party in FFA loot regardless of which combination of toons I have on.
     
     
    Assistor (I bind to action key 2)

    Assistor needs to be customized for the speicific toon you're on. I'm going to psudeocode here... fill in your own spell names for the capitalized names here

    /assist MAIN_TOON_1_NAME
    /assist MAIN_TOON_2_NAME
    /castsequence reset=CD_VALUE_OF_OPENER_SPELL INSTANT_OPENER_SPELL, SOME_AUTOATTACK_SPELL
    /startattack

    Note that I have two chained assist calls. This is fine as an assist to a not-logged-in toon will just fail with no consequences. Basically, I always use one of my mele-capable toons on the main account as the "master", so the assists are hardcoded.

    The castsequence has a reset=CD_VALUE_OF_OPENER_SPELL, so for instance on my mage, it's Arcane Blast, and the autoattack spell is "shoot":

    /castsequence reset=8 Arcane Blast, shoot

    NOTE: the /startattack line is to make sure that if something on the cast fails, they're at least in attack mode.


    MainAttack (I bind to action key 1)

    This one can vary depending on the toon in question... sometimes a single spell is fine, sometimes I want a castsequence, and sometimes a castrandom is in order.

    I have a confession, I'm a button masher. I guess I got in the habit in the original Diablo where 1 click == 1 swing or 1 cast, so I tend to favor /castrandom macros with a list of various spells. It's never going to be as efficient as a spell rotation manually tweaked for each encounter, but welcome to the world of multiboxing where less is often more. Keep the activities you need to have simple and you'll be a lot more effective, and get it out of your head that you ever be able to play more than one toon at one time as well as a given number of single boxing players (unless they're all Mr. Bean or something).

    Before I specced my mage hardcore into arcane, I had the main set up

    /castrandom [channeling]; Frostbolt, Fire ball, Arcane Missiles
    /startattack

    The [channeling]; before the spell list makes it fall through and do NOTHING if I'm channeling (as in Arcane Missiles). Without this, you can end up stomping on your spell channel or keep restarting it thus wasting mana.
     
    Nowadays, I specced my mage entirely Arcane, so it really makes no sense to cast non-arcane spells (unless I'm up against arcane-immune Mobs) so I've got it set up as:

    #showtooltip Arcane Missiles
    /cast [channeling]; Arcane missiles
    /startattack

    This lets me spam button 1 and it will cast arcane missiles every time that I'm NOT already casting it

    Follower (I bind to the . key due to the way my fang is set up)

    We are once again making good use of silent fallthrough. I start with my least favorite option (blithely following the party leader), then my (oh dear, the main's not on for some reason) third account (this assumes it's on my secondary account, adjust as needed), and finally the option thats most likely going to hit (the main account folks). THEN I hit /follow.

    /terget party1
    /target A3_MAIN TOON
    /target A3_ALT  
    /target A1_MAIN_TOON
    /target A1_ALT
    /follow

    Now in theory, I could just do a bunch of /follow TOON_NAME, but Follower is dual-use for me. It guarantees that their target is back to my main. This allows me to always retarget a healer to my main toon without looking.. just hit follower (and quickly take 1 step back to keep them from moving if I want to keep them where they are) followed by a healing spell... so really quickly, (with my setup), if I wanted my priest to stop what she was doing and cast Prayer of mending on my main, I would hit  . (follower) s (step back) 8 (PoM)

    Then go back to attacking by hitting 2 (assistor) and then spamming 1 (on my priest, that one is /castrandom Mind Blast, Holy Fire, Smite )
     
    PRIEST SPECIFIC
    Here I have two priest-specific macros that I use to keep my toons up when the excrement collides with the air circulation device. Nice thing is that binding heal gets both my toons.. yeah, if my priest isnt getting hit, it is wasted mana, but when things are going all pear shaped, it's about survival, NOT mana conservation. Spamming binding heals guarantees that both of my toons stay up until the priest dies or is CCd while I keep looking at what my main needs to do.
     
    PoM is absolutely brilliant because it continues to bounce around while I go back to whatever it was I was doing (probably smiting) on my priest. The audible "bing" of the PoM bouncing from one to the other is helpful too - I know without looking if someone besides the mele takes damage... and if I count the "bings", I can tell when I need a new one. Since patch 3.0.2, it crits for about 3K healing - it's one of my most useful heals while dual boxing.
     
    MainBind

    /target A1_ALT_TOON
    /target A1_MAIN_TOON
    /cast Binding Heal

    MainPoM

    /target A1_ALT_TOON
    /target A1_MAIN_TOON
    /cast Prayer of Mending

    Again, this is how I set stuff up and your milage may vary.

    Next time: I dunno yet...

    Multi Boxing Computer Setup

    Last time, I gave a background on the toon setup. Now that the toons are sorted out, I'll go into my setup. This is certainly not the way everyone does it, but this works for me.

    I use a separate PC for each toon rather than alt/tabbing or having really small windows for the alts. The desk is a corner-style with no hutch, so my three LCD monitors are arranged in a /--\ configuration from left to right primary through tertiary.

    The desk has a split deck for monitor/keyboard areas that allows me to lower the kbd/mouse for the primary system and kind of lean a Fang controller board at a 45degree angle just over my F1-F4 keys. That fang controller board is attached to the SECONDARY pc, so I can reach up and use my left hand to hit the action buttons on it independantly of what I'm doing on my main. The Tertiary system is controlled by having a program called KeyClone which sends certain keystrokes (generally only 1-0, -,=,w,s,q,e,`, and . ) that are pressed on the secondary to the tertiary.

    That means that whenever I press action button 1 on my secondary toon's pc, it also presses action 1 on my tertiary. By careful combination of macros and occasionally leaving some buttons blank on one or another, I can have an effective if somewhat limited set of common activities set up on my two "slaves".

    Each PC has a mouse and keyboard so that I can directly take control if need be, though the tertiary keyboard is a bit awkward to do anything terribly complex with.

    I use a program called Synergy which allows me to link up the mouse cursor in such a way that the three systems kind of act as if it was one big triple-monitor system. If I move the mouse (main PC only) off to the right edge, the mouse control passes to the middle pc, and mouse and keyboard movements now apply to that computer... move it off to the right of the second, and the control goes to the third. Synergy has a problem where WOW mouse-look on the second or third goes hyper sensitive and basically just spins, so I have to be careful to only use it for clicking and/or keyboard commands.

    Due to the buggy way mouse look works, I never use this to control an alt in combat. If I absolutely need to control an alt directly, I grab its mouse.

    Next time: Macros!

    My MultiBoxing Background

    I recently read an article about "Dinner with the Multiboxers" (WOW Insider) and it seems that there's a lot of misunderstanding about MultiBoxing on WOW.

    So, I decided to start a little blog here

    BACKGROUND

    I run three accounts (started with two, but added a "recruit a friend" so I could level up a couple of crafting alts)

    On those three acounts, I currently have 5 level 70's... a rogue, a Tankadin, a holly priest, a mage, and a BoomKin. I've got a 60 shammy that I'm planning to zerg to 70 soon as well.

    The toons are divided amongst the three accounts as Rogue/Pally, Priest/Druid/Shammy, and Mage, and my future plan is to transfer either the druid or the Shammy to the account with the mage so that I will end up with two operational sets of triple-boxing goodness.

    So, when running it would be something like:

    GROUP 1 - MAINS
      Primary:   Prot Pally    (Miner/eng)
      Secondary: Holy Priest   (Tailor/Chanter)
      Tertiary:  Arcane Mage   (Jewelcrafter/ ?? )

    GROUP 2 - ALTS
      Primary:   Rogue         (Skinner/Leatherworker)
      Secondary: BalanceDruid  (Herbalist/Inscriptionist)
      Tertiary:  Resto? Shammy ( ?? / ?? )

    (though the jury's out as to whether the druid and shammy would be reversed)

    Basically, the idea here is to have two ranged/casging toons with a mele on primary (cuz that's the one the others are following and it just flows easier if I do things that way), and that each group has two ressurections/heals available

    I also want to balance out the gathering so that I've got at least two different gather professions available with each group. (that's why there are ??'s in the list right now).

    Next time: Computer Setup