07-19-2009 05:54 PM
I have an idea in my head which I'm not sure how best to implement; my G13 is still very new. :-)
I'd like to have a particular key (G22) put my keys into a "shift" mode which ends whenever I press any other key. For example, if I bind G1 to "A" and press-and-release G22, then G1, it should send the keys "A", then "Shift-A" and leave me (or put me back) in mode 1.
I've had a few ideas as to how to do this. At first, I wanted to use G22 as a "toggle" for the Shift key, but that only seems to be possible through the repeat options, which are only available for the joystick, it appears. I then set up G22 to change the mode to M2 and started mapping the M2 keys to the shifted equivalents of my M1 keys, but this leaves me in M2 after pressing any of them.
Looking at the script API, it actually looks pretty straightforward to accomplish exactly what I want via a script (and just map every key in M2 to the script), but I'm worried that using the script might trigger World of Warcraft's "Warden" program, as scripts can also be used to violate the game's TOS.
Is there a way to get what I want without scripting? Does WoW even care whether you use a script?
07-19-2009 07:45 PM - edited 07-19-2009 07:48 PM
7 posts down from the top, when you wrote this was this thread: Fist 2 words of the title "SHIFT STATE"
wow that was easy
07-19-2009 10:10 PM
07-19-2009 11:08 PM
07-19-2009 11:14 PM
07-19-2009 11:24 PM
07-19-2009 11:30 PM
And that has what to do with the price of tea in China? :-D
I believe that story's been floating around since before Blizzard rolled out the Warden (WoW's cheat-detector). And even if not… was that a G-series script? The fact that some scripts don't get caught and banned even though they're harmful doesn't mean that it's impossible for a harmless script to get banned unfairly. I've sunk quite a bit of time into my WoW characters and I don't relish the idea of risking what I've built on a slightly more convenient keyboard layout.
08-11-2009 03:16 AM
Just the idea, if final code is needed I will do it on next days if you request it:
ShiftStatus = 0; <<- Global Variable
if G_Pressed == G22 then
ShiftStatus = 1;
if G_Pressed == G1 then
if ShifStatus = 0 then
-----whatever you want to do in normal mode----
-----whatever you want to do in shifted mode----
ShiftStatus = 0;