Close
Showing results 1 to 7 of 7

Hybrid View

  1. #1

    Default Keyclone hotstrings

    Mr Keyclone, that hotstring capability you added to keyclone is awesome. I just learned how to use it in a focusless/leaderless setup and am very happy with the results. However, it is a real pain to setup and mainly it is due to the amount of manual work to get all the hotstrings setup. For a shaman it isn't so bad since there are only a few that need to be setup but for others such as warlock, etc, that have a ton of spells it becomes really difficult.

    Is there a chance that a future version may include an easier way to setup hotstrings? For the most part you are having to setup the same hotstrings 5 different times into separate files manually. It would be great if there was a bit more automation.
    Dana Pain
    Legion of Boom
    Kil'Jaeden



  2. #2

    Default

    Well, you can type the hotstrings in a text/code editor. That is what I did after I figured out how it worked, not very hard :P
    Was alot faster as you can just copy when you have done 1 "template".

  3. #3

    Default

    Edit: Exactly what sthar said above.

    I'm at the office now so this is from memory.

    If this is for the FTL setup then you have 5 entries for each key, I did 15 keys. 5entriesx15keyx5chars = 425 times you have to hit your key sequence and type in the name of the hot string and then click add.

    I made 1 set of hotstrings and put the proper modifiers on EVERY character (normally you are leaving the mod off for the actual character/account this map belongs to)
    Then I looked at the resulting .kcl file. Toon1's mod was ALT so I did a replace on all ".16.16)=hs(" with ".0.0)=hs(" which essentially changes all the 16s (ALT KEY) to 0(no modifier) and saved the kcl as toon1.kcl then I undid all the changes (you can just reload the original file) and changed all the second toons modifiers (say Shift - which is 1?) to zeros and saved the resulting file as toon2.kcl and so on.

    Turns out you can specify LALT and RALT in the wow macros so I actually tested for LSHIFT and RSHIFT and LALT.... etc. which leaves more combinations for binding in the game.

    Now - because I'm using Macaroon I can fit all the macros on one button and so I mapped number 1 to 1 with all the modifiers. I think in the original FTL setup they mapped number 1 to something else not being used like `(TILDE). I didnt do that.

    Let me know and I'd be happy to post the contents of my .kcl here to make it even easier.

  4. #4

    Default

    Harem, could you please post your keymap file for reference? also, I am also using macaroon, but I dont know how you're doing your macro that you dont need to reference another unused button. Can you please explain at your convenience?

    My understanding is that you have your activation key (like 1- = or whatever) and that's for your main, but your slaves are actually using the hotstrings to call on the bind to the unused key (tilde, in your example) this eats up a bunch of my keys, and if there's a way that I dont have to do that, that would be fantastic.

  5. #5

    Default

    Modifiers for toons:
    ToonA: LSHIFT
    ToonB: RSHIFT
    ToonC: LALT
    ToonD: RCTRL
    ToonE: LSHIFT+LALT+RCTRL

    Right now it seems keyclone isn't actually sending RALT or LCTRL - it sends both LALT and RALT as LALT. It also seems to send LCTRL and RCTRL as RCTRL. But, LSHIFT and RSHIFT work like they are supposed to. The reason I used the above combinations was so I could bind ALT+SHIFT to an action bar and CTRL+SHIFT to another and have 3 action bars keybound that didnt interfer with hotstrings.

    This is what the modifiers break down to in the kcl file
    Code:
    ^
    k(49.1.1):hs(LSHIFT1)
    k(49.2.2):hs(RSHIFT1)
    k(49.4.4):hs(LCTRL1)
    k(49.8.8):hs(RCTRL1)
    k(49.16.16):hs(LALT1)
    k(49.25.25):hs(LsRcLa1)
    k(49.32.32):hs(RALT1)

    here is my KCL the I do a search and replace on to make each of the toons individual kcl file (If i hadnt done this I might have pulled my hair out when troubleshooting the RALT and LCTRL problem above):

    Code:
    AllToons             ToonA                ToonB               
    k(48.25.25):hs(B0AE) k(48.25.25):hs(B0AE) k(48.25.25):hs(B0AE)    
    k(48.1.1):hs(B0AA)   k(48.0.0):hs(B0AA)   k(48.1.1):hs(B0AA)  
    k(48.16.16):hs(B0AC) k(48.16.16):hs(B0AC) k(48.16.16):hs(B0AC)    
    k(48.2.2):hs(B0AB)   k(48.2.2):hs(B0AB)   k(48.0.0):hs(B0AB)  
    k(48.8.8):hs(B0AD)   k(48.8.8):hs(B0AD)   k(48.8.8):hs(B0AD)  
    k(49.25.25):hs(B1AE) k(49.25.25):hs(B1AE) k(49.25.25):hs(B1AE)    
    k(49.1.1):hs(B1AA)   k(49.0.0):hs(B1AA)   k(49.1.1):hs(B1AA)  
    k(49.16.16):hs(B1AC) k(49.16.16):hs(B1AC) k(49.16.16):hs(B1AC)    
    k(49.2.2):hs(B1AB)   k(49.2.2):hs(B1AB)   k(49.0.0):hs(B1AB)  
    k(49.8.8):hs(B1AD)   k(49.8.8):hs(B1AD)   k(49.8.8):hs(B1AD)  
    k(50.25.25):hs(B2AE) k(50.25.25):hs(B2AE) k(50.25.25):hs(B2AE)    
    k(50.1.1):hs(B2AA)   k(50.0.0):hs(B2AA)   k(50.1.1):hs(B2AA)  
    k(50.16.16):hs(B2AC) k(50.16.16):hs(B2AC) k(50.16.16):hs(B2AC)    
    k(50.2.2):hs(B2AB)   k(50.2.2):hs(B2AB)   k(50.0.0):hs(B2AB)  
    k(50.8.8):hs(B2AD)   k(50.8.8):hs(B2AD)   k(50.8.8):hs(B2AD)  
    k(51.25.25):hs(B3AE) k(51.25.25):hs(B3AE) k(51.25.25):hs(B3AE)    
    k(51.1.1):hs(B3AA)   k(51.0.0):hs(B3AA)   k(51.1.1):hs(B3AA)  
    k(51.16.16):hs(B3AC) k(51.16.16):hs(B3AC) k(51.16.16):hs(B3AC)    
    k(51.2.2):hs(B3AB)   k(51.2.2):hs(B3AB)   k(51.0.0):hs(B3AB)  
    k(51.8.8):hs(B3AD)   k(51.8.8):hs(B3AD)   k(51.8.8):hs(B3AD)  
    k(52.25.25):hs(B4AE) k(52.25.25):hs(B4AE) k(52.25.25):hs(B4AE)    
    k(52.1.1):hs(B4AA)   k(52.0.0):hs(B4AA)   k(52.1.1):hs(B4AA)  
    k(52.16.16):hs(B4AC) k(52.16.16):hs(B4AC) k(52.16.16):hs(B4AC)    
    k(52.2.2):hs(B4AB)   k(52.2.2):hs(B4AB)   k(52.0.0):hs(B4AB)  
    k(52.8.8):hs(B4AD)   k(52.8.8):hs(B4AD)   k(52.8.8):hs(B4AD)  
    k(53.25.25):hs(B5AE) k(53.25.25):hs(B5AE) k(53.25.25):hs(B5AE)    
    k(53.1.1):hs(B5AA)   k(53.0.0):hs(B5AA)   k(53.1.1):hs(B5AA)  
    k(53.16.16):hs(B5AC) k(53.16.16):hs(B5AC) k(53.16.16):hs(B5AC)    
    k(53.2.2):hs(B5AB)   k(53.2.2):hs(B5AB)   k(53.0.0):hs(B5AB)  
    k(53.8.8):hs(B5AD)   k(53.8.8):hs(B5AD)   k(53.8.8):hs(B5AD)  
    k(54.25.25):hs(B6AE) k(54.25.25):hs(B6AE) k(54.25.25):hs(B6AE)    
    k(54.1.1):hs(B6AA)   k(54.0.0):hs(B6AA)   k(54.1.1):hs(B6AA)  
    k(54.16.16):hs(B6AC) k(54.16.16):hs(B6AC) k(54.16.16):hs(B6AC)    
    k(54.2.2):hs(B6AB)   k(54.2.2):hs(B6AB)   k(54.0.0):hs(B6AB)  
    k(54.8.8):hs(B6AD)   k(54.8.8):hs(B6AD)   k(54.8.8):hs(B6AD)  
    k(55.25.25):hs(B7AE) k(55.25.25):hs(B7AE) k(55.25.25):hs(B7AE)    
    k(55.1.1):hs(B7AA)   k(55.0.0):hs(B7AA)   k(55.1.1):hs(B7AA)  
    k(55.16.16):hs(B7AC) k(55.16.16):hs(B7AC) k(55.16.16):hs(B7AC)    
    k(55.2.2):hs(B7AB)   k(55.2.2):hs(B7AB)   k(55.0.0):hs(B7AB)  
    k(55.8.8):hs(B7AD)   k(55.8.8):hs(B7AD)   k(55.8.8):hs(B7AD)  
    k(56.25.25):hs(B8AE) k(56.25.25):hs(B8AE) k(56.25.25):hs(B8AE)    
    k(56.1.1):hs(B8AA)   k(56.0.0):hs(B8AA)   k(56.1.1):hs(B8AA)  
    k(56.16.16):hs(B8AC) k(56.16.16):hs(B8AC) k(56.16.16):hs(B8AC)    
    k(56.2.2):hs(B8AB)   k(56.2.2):hs(B8AB)   k(56.0.0):hs(B8AB)  
    k(56.8.8):hs(B8AD)   k(56.8.8):hs(B8AD)   k(56.8.8):hs(B8AD)  
    k(57.25.25):hs(B9AE) k(57.25.25):hs(B9AE) k(57.25.25):hs(B9AE)    
    k(57.1.1):hs(B9AA)   k(57.0.0):hs(B9AA)   k(57.1.1):hs(B9AA)  
    k(57.16.16):hs(B9AC) k(57.16.16):hs(B9AC) k(57.16.16):hs(B9AC)    
    k(57.2.2):hs(B9AB)   k(57.2.2):hs(B9AB)   k(57.0.0):hs(B9AB)  
    k(57.8.8):hs(B9AD)   k(57.8.8):hs(B9AD)   k(57.8.8):hs(B9AD)  
    k(189.25.25):hs(B-AE)k(189.25.25):hs(B-AE)k(189.25.25):hs(B-AE)   
    k(189.1.1):hs(B-AA)  k(189.0.0):hs(B-AA)  k(189.1.1):hs(B-AA) 
    k(189.16.16):hs(B-AC)k(189.16.16):hs(B-AC)k(189.16.16):hs(B-AC)   
    k(189.2.2):hs(B-AB)  k(189.2.2):hs(B-AB)  k(189.0.0):hs(B-AB) 
    k(189.8.8):hs(B-AD)  k(189.8.8):hs(B-AD)  k(189.8.8):hs(B-AD) 
    k(187.25.25):hs(B=AE)k(187.25.25):hs(B=AE)k(187.25.25):hs(B=AE)   
    k(187.1.1):hs(B=AA)  k(187.0.0):hs(B=AA)  k(187.1.1):hs(B=AA) 
    k(187.16.16):hs(B=AC)k(187.16.16):hs(B=AC)k(187.16.16):hs(B=AC)   
    k(187.2.2):hs(B=AB)  k(187.2.2):hs(B=AB)  k(187.0.0):hs(B=AB) 
    k(187.8.8):hs(B=AD)  k(187.8.8):hs(B=AD)  k(187.8.8):hs(B=AD) 
    k(219.25.25):hs(B[AE)k(219.25.25):hs(B[AE)k(219.25.25):hs(B[AE)   
    k(219.1.1):hs(B[AA)  k(219.0.0):hs(B[AA)  k(219.1.1):hs(B[AA) 
    k(219.16.16):hs(B[AC)k(219.16.16):hs(B[AC)k(219.16.16):hs(B[AC)   
    k(219.2.2):hs(B[AB)  k(219.2.2):hs(B[AB)  k(219.0.0):hs(B[AB) 
    k(219.8.8):hs(B[AD)  k(219.8.8):hs(B[AD)  k(219.8.8):hs(B[AD) 
    k(221.25.25):hs(B]AE)k(221.25.25):hs(B]AE)k(221.25.25):hs(B]AE)   
    k(221.1.1):hs(B]AA)  k(221.0.0):hs(B]AA)  k(221.1.1):hs(B]AA) 
    k(221.16.16):hs(B]AC)k(221.16.16):hs(B]AC)k(221.16.16):hs(B]AC)   
    k(221.2.2):hs(B]AB)  k(221.2.2):hs(B]AB)  k(221.0.0):hs(B]AB) 
    k(221.8.8):hs(B]AD)  k(221.8.8):hs(B]AD)  k(221.8.8):hs(B]AD) 
    k(192.25.25):hs(FOE) k(192.25.25):hs(FOE) k(192.25.25):hs(FOE)    
    k(192.1.1):hs(FOA)   k(192.0.0):hs(FOA)   k(192.1.1):hs(FOA)  
    k(192.16.16):hs(FOC) k(192.16.16):hs(FOC) k(192.16.16):hs(FOC)    
    k(192.2.2):hs(FOB)   k(192.2.2):hs(FOB)   k(192.0.0):hs(FOB)  
    k(192.8.8):hs(FOD)   k(192.8.8):hs(FOD)   k(192.8.8):hs(FOD)
    Now, with all of that, my main macaroon bar has 14 buttons on it 1-9, 0, -, =, [, ]

    and the macro component goes something like:
    Code:
    /assist 
    [nomod:ctrl,nomod:alt,mod:lshift,target=ToonA]
    [nomod:ctrl,nomod:alt,mod:rshift,target=ToonB]
    [nomod:ctrl,mod:lalt,nomod:shift,target=ToonC]
    [mod:rctrl,nomod:alt,nomod:shift,target=ToonD]
    [mod:rctrl,mod:lalt,mod:lshift,target=ToonE]
    I'm using the target and hold system which is a slight mod of the original FTL

    So... The orginal FTL used this:
    Code:
    ToonA: 
     
     2 --> LBAT 
     Ctrl-alt-] --> LBBT 
     Alt-Shift-] --> LBCT 
     Ctrl-Alt-Shift-] --> LBDT 
     Ctrl-] --> LBET
    you used "2" on the master toon and sent it, via hotstring, as ] with modifiers. I just press 2 and send 2 with modifiers to the other toons and the modifers determine the target.

  6. #6

    Default

    Another (more radical) solution, you might want to look at is using HotKeyNet instead of (or in combination with) keyclone.

    Anemo did a wonderfull job to get the ftl running with Hotkeynet.
    See: [HotKeyNet] Leaderless setup with HotKeyNet

    ..and when you have figured out, how to setup HotKeyNet in general and defined your modifier combinations, it only needs 5 lines to setup a new ftl-Hotstring.
    Wich would look like:
    Code:
    <Hotkey 2>
    <If ActiveWinIs wow1> <Assist1 %trigger% y>
    <Else If ActiveWinIs wow2> <Assist2 %trigger% y>
    <Else If ActiveWinIs wow3> <Assist3 %trigger% y>
    <Else If ActiveWinIs wow4> <Assist4 %trigger% y>
    <Else If ActiveWinIs wow5> <Assist5 %trigger% y>
    For master-key '2' and slave-key 'y'.

    (I tested it yesterday, with no HotKeyNet experience and it took me under an hour to get it running, inluding PiP, FTL and so on..)
    -Another benefit is, that you get real mouse broadcasting too
    OLIPCS - ordinary life is pretty complex stuff
    ----------------------------------------------------------------
    Pala, Priest, Druid, Hunter, Mage
    Focusless Targetless Leaderless - Wiki
    HotKeyNet - Guide

  7. #7

    Default

    I saw that.

    What I am using above though has a master key of 2 and a slave key of 2 - this saves keys. It also allows for the use of LSHIFT and RSHIFT (and in the future LALT,RALT,LCTRL,RCTRL) which leaves more combinations for bindings.

    I use an N52 and have assigned ALT+SHIFT and other modifiers to several of my mouse buttons (logitech g5 has 9 buttons + wheel) so using a button on my mouse allows me access to to a plethora of keys without moving my hands.

    If I can only use ALT,CTRL, and SHIFT it seriously cuts down on what I can access without having to page through the n52's 'red', 'green' and 'blue' states and what modifiers I can bind with.

    I just looked up more info on Hotkeynet. I originally tried using it but after seeing how easy (low grade learning curve) keyclone was thats what I went with. Now that I'm playing I have more time to investigate Hotkeynet and it looks powerful as all get-out once you get over the hump on the learning curve.

    Thanks for pointing me that way so I could look at it again. I see I can also fix my LEFT and RIGHT mod (alt,ctrl)keys with it.

Similar Threads

  1. Some help with Keyclone Hotstrings please?
    By PauperJin in forum New Multi-Boxers & Support
    Replies: 4
    Last Post: 09-06-2009, 10:33 PM
  2. Keyclone: Multiple Hotstrings => Same keystroke?
    By asonimie in forum Software Tools
    Replies: 7
    Last Post: 10-05-2008, 12:16 AM
  3. keyclone help hotstrings
    By ahnubis in forum Software Tools
    Replies: 13
    Last Post: 08-19-2008, 08:37 AM
  4. keyclone keymaps and hotstrings.
    By farkenell in forum Software Tools
    Replies: 3
    Last Post: 04-19-2008, 06:39 PM
  5. keyclone v1.3c - hotstrings, extended keys, and more
    By keyclone in forum General WoW Discussion
    Replies: 47
    Last Post: 08-04-2007, 01:48 AM

Posting Rules

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •