Cycling hotkeys to different clients

Post Reply
Simhigi
Posts: 6
Joined: Fri Jan 31, 2020 6:40 pm

Cycling hotkeys to different clients

Post by Simhigi » Fri Jan 31, 2020 6:51 pm

Hello and thanks for making Mojo - it is incredibly useful on so many levels.

I realize you don't actively work on Mojo any longer, but I'm wondering if Mojo have an equivalent to http://www.hotkeynet.com/ref/toggle.html? The functionality I'm looking to replicate is to have a single hotkey which, when initially pressed, gets sent to client1. When you press it again it goes to client2, etc, eventually rotating back around to client1. The use case is mainly for timered abilities that don't stack where you would want to use them one at a time.

Thanks

Rob
Site Admin
Posts: 1284
Joined: Sat Sep 25, 2010 6:52 am

Re: Cycling hotkeys to different clients

Post by Rob » Sat Feb 01, 2020 2:28 am

Hi Simhigi,

Thanks for the kind words. You just put me in a nostalgic mood and put a big smile on my face by linking to that HotkeyNet page. In case you don't know, I wrote HotkeyNet, and although I tend to forget a lot of things about HotkeyNet and Mojo, I remember Toggle quite well. I wrote HKN for World of Warcraft, and back when I was beefing it up and getting it ready to publish, in 2008 or 2009, there was only one published multiboxing program for WoW in existence. It was called KeyClone and it had a feature called Round Robin which HKN's users wanted me to imitate. That's where the idea for Toggle came from. I think Toggle ended up being more general-purpose than Round Robin but I can't remember exactly.

I just remembered that KeyClone's author was named Rob, same as me. I haven't thought of this in years. We both were using dual-boxing.com's forum to talk with our testers (this was before the author of ISBoxer bought that website, and ISBoxer didn't exist yet), and to avoid confusing people I started calling myself Freddie when talking to people about HKN. That's why I'm Freddie instead of Rob on HKN's website.

Getting back to your question, no, Mojo doesn't have a feature like that. You could probably write a single hotkey that works like that with Mojo's LoadHotkeyFile command but it would be a pain in the butt and you'd be limited to one Hotkey.

I'll think about adding Toggle to Mojo and get back to you.

Cheers. :)
Author of Mojo

Rob
Site Admin
Posts: 1284
Joined: Sat Sep 25, 2010 6:52 am

Re: Cycling hotkeys to different clients

Post by Rob » Mon Feb 10, 2020 5:58 am

Hi again Simhigi. I thought about adding Toggle to Mojo. It would require basic changes to several crucial parts of the program. This would be a lot of work, and also it's very likely that these changes would create new bugs that break features that currently work perfectly.

Then, because I get so little feedback from Mojo's users, these new bugs might never get reported to me and might never get fixed. If that happens -- and I think it's very likely -- the changes would make the program worse instead of better.

For these reasons I have to say sorry, I've decided not to add Toggle, at least not now.
Author of Mojo

alnmike
Posts: 57
Joined: Sat Sep 10, 2011 7:46 pm

Re: Cycling hotkeys to different clients

Post by alnmike » Tue Feb 11, 2020 4:26 am

I've been using different keybinds for this. Don't know how many different toons and timers you want, but back when the shaman dmg reflect was released, I was using a group of shamans and another random toon (usually another shaman lol) to farm basically everything and to solo plvl in POC. Shamans don't have to be grouped with the toon they're healing/shielding. I'd like to think that I'm the reason it got changed to rvr only use :)
Anyway:

Had 3 or 4 shamans each spamming 2 abilities at specified timers depending on recast time. There was the dmg shield, and the hot with different durations.

Go through your /keyboard and find all the keys that don't currently do anything, I think there's like 10 or 15. Go to an unused quick bar (usually 7 for me) and set your keybinds.

For my fictional example: shaman A had dmg shield on #1, the hot on #7. Rest empty. Shaman B has dmg shield on 2, hot on 8. Shaman C has shield on 3, hot on 9. So on, so on.

Now set your keybinds. I made a special macro that I load to type all 10 of my /qbind 7 X(1-10) to the empty 10 keyboard letters I found, into all of my macro group at once. Rob has great documentation on how to do this.

Once your keybinds are set, there's a loop command or something in MOJO for hot keys. I haven't played daoc enough to figure out how to use it. Looks dead simple, I just haven't bothered.
What I did with the shamans was use my logitech keyboard macro program to make 2 separate macros. One was on a 15.5 sec repeat pressing: hjkl spaced a few ms apart. The second was on a 20.5 sec repeat pressing vbnm spaced a few ms apart.. The extra half second and few ms apart is to help with potential lag. It's better to be 98% efficient with timers than to have something fail for an entire duration.

Don't remember the exact keys but you get the point..
Your only limited to 20 or so separate spells/buttons unless you get really creative. (using different quick bars with /qbar switching macros on them, go nuts!) (I ended up having an auto qbar switching macro on a separate timer and macro back in the hkn days because pressing shift or something during a macro would switch other accounts quick bar's in weird ways, so that macros job was to always go back to /qbar1 every 30 sec or so to make sure the problem was minimized. But MOJO is much better at handling movement/other keypresses and sending instructions at the same time so it's prolly not an issue anymore)

Good hunting!

Rob
Site Admin
Posts: 1284
Joined: Sat Sep 25, 2010 6:52 am

Re: Cycling hotkeys to different clients

Post by Rob » Tue Feb 11, 2020 8:56 am

Hi Mike,

Thanks a lot for posting that information. Much appreciated. I'm not sure you guys are talking about the same thing. Maybe I misunderstood the OP -- hopefully he'll come back and answer for himself -- but I don't think he wants timers, loops, or automation. I think he's asking for a hotkey that sends to a different toon each time he presses it with his finger.

I probably don't understand your idea very well. Are you saying that you assign /qbinds with a hotkey?
Author of Mojo

alnmike
Posts: 57
Joined: Sat Sep 10, 2011 7:46 pm

Re: Cycling hotkeys to different clients

Post by alnmike » Wed Feb 12, 2020 1:04 am

I read about different timered abilities in the OP. I just automated it. And went full send on it, selling a mithril or two worth of labby mythirians from the farming. :mrgreen:

For my qbind script: I just found my avaliable keys from /keyboard (I use the same toon files for every account), and did a single script to do all the qbinds (which are toon dependant) every time I need to since the keys are the same.

Example:I'm on my phone at work, don't remember exact script...

Send (all)

Slash ( "/qbind 7 2")
Wait (50)
Key (v)
Wait (20)

Slash ( "/qbind 7 3")
Wait (50)
Key (b)
Wait (20)

Ect, times 10.

End result is every team I have has the exact same set of /qbinds.
Then, I just need to populate quickbar 7 with whatever spells I need (if any).
Don't even know if that script made it into MOJO or if it's just in hkn.

Oh, I also use these same qbinds on my rvr toons. Examples are paladins back in the day, twisting with letters instead of a full quickbar.
Now I mainly use it for styles.

On first quickbar I hit the parry style (5 example) , HKN will press the 3rd parry style, then 2nd, then the parent hotkey key (first in style chain) , then an anytime style. So I can just hit 5, and hkn presses 4 buttons each time. If I mistimed and didn't parry, I use an anytime style. If I just parried, I use parry style. If I landed parry style, it goes up the chain, etc.
Have the same setup for block/side/rear/even front styles, with their style chains and an anytime backup. This setup let's me use 10 different style chain styles, plus an anytime (on qbar 8 1), plus the original style. So if a chain has 3 styles, I only use 2 of my avaliable 10 ready slots. Since we don't have 5x 3chain styles, I don't run out of room.

Really makes playing melee easier since I lack the coordination to pull off the side/back chain dancing that everyone else seems to be able to do. At least I can make parry/block styles easier.

The one drawback is at the start of the fight you have a single unstyled swing. Unavoidable. Or, just click your anytime once to start fighting, boom.

Rob
Site Admin
Posts: 1284
Joined: Sat Sep 25, 2010 6:52 am

Re: Cycling hotkeys to different clients

Post by Rob » Wed Feb 12, 2020 1:29 am

alnmike wrote:
Wed Feb 12, 2020 1:04 am
I read about different timered abilities in the OP. I just automated it. And went full send on it, selling a mithril or two worth of labby mythirians from the farming. :mrgreen:
Ah, okay, I get it now.

alnmike wrote:
Wed Feb 12, 2020 1:04 am
Slash ( "/qbind 7 2")
Great idea to set qbinds like that on the fly. I don't think I've seen that before. But with Mojo there might be an alternative because with Mojo, unlike HKN, you can trigger any qbind slot you want directly with a hotkey like this:

Edit: I made a mistake here, ignore the following code. See my post below.

Code: Select all

Hotkey (F1)
{
  // THIS IS WRONG -- SEE POST BELOW
  
   Key ( Alt 7 3 )
}
That triggers quickbar 2, bank 7, slot 3. Maybe it's still useful to change the qbinds instead, I dunno.
Author of Mojo

alnmike
Posts: 57
Joined: Sat Sep 10, 2011 7:46 pm

Re: Cycling hotkeys to different clients

Post by alnmike » Thu Feb 13, 2020 2:31 am

I think I'm missing something. Does
"Key (alt 7 2)"
mean the same thing as pressing ALT and 7 and 2 at the same time? Didn't know daoc had that functionality. I've never really played with keyboard shortcuts for anything but qbinds. I thought pressing alt and a number was just for the second quickbar (and ctrl for third). But locked to whatever bank was currently shown? (like switching banks on the first QB and pressing a number)
How does the game decide to use bank 7 slot 2 vs bank 2 slot 7?

Rob
Site Admin
Posts: 1284
Joined: Sat Sep 25, 2010 6:52 am

Re: Cycling hotkeys to different clients

Post by Rob » Thu Feb 13, 2020 4:12 am

Oops, yeah, you're right. I forgot how this works and what I wrote above is wrong. But I just tested in the game and we can switch banks with the keyboard. Here's a correct example.

Example: Alt quickbar, bank 7, slot 3.

It's a two step process: First we switch to bank 7 with keystrokes, then we trigger slot 3 with keystrokes.

A. Without Mojo

Step 1. Switch to bank 7.

The game provides two ways of changing the bank with the keyboard. Both of the following snippets do the same thing.

Code: Select all

Shift Alt 7
Or:

Code: Select all

/qbar 7 2
In the first snippet, the Shift key tells the game, "I'm switching banks not triggering a slot." In the second snippet, the 2 means "2nd quickbar (i.e. Alt quickbar)."

Step 2. Trigger slot 3.

Code: Select all

Alt 3
B. With Mojo

Now let's do this same thing with a Mojo hotkey:

Code: Select all

Hotkey ( F1 )
{
   Key ( Shift Alt 7 )
   Key ( Alt 3 )
}
That works no matter which bank is currently set on the Alt quickbar, and there's no need for a Wait between the two key commands.

This might work sometimes in HKN too but HKN doesn't always handle Shift/Alt/Ctrl correctly. Mojo, as far as I know, does.

One disadvantage of that type of hotkey is that it leaves the Alt quickbar set to bank 7, which you might not like. But this is easy enough to fix. Suppose you always want the Alt quickbar set to bank 1 as the default. Just add another line to the hotkey like this to switch back to bank 1 at the end:

Code: Select all

Hotkey ( F1 )
{
   Key ( Shift Alt 7 )
   Key ( Alt 3 )
   Key ( Shift Alt 1 )
}
Author of Mojo

Post Reply