I discovered JaKataK throught the amazing Rapid Fire Inject. This helped me to discovering TheCore project and TheStairCase. Going through TheStairCase using TheCore Lite was a key step for me.The Rapid Fire trick is really cool. In this thread, the central part is keyboard tuning for hotkeys.
Enable 2-keys Rapid Fire under Linux based OS
Context
The point is that some Rapid Fire applications rely on a double key repeat, which appears to work only under Windows, with only some keyboards.
- Rapid Fire Worker Split
- Rapid Fire Inject
This is only possible with a keyboard able to output the following when 2 keys are simultaneously pressed:
jkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjkjk
Non-eligible keyboards output is:
jkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
It appears that even with the right keyboard, this behavior never happens on Linux. This is a Windows-only thing due to some keyboard driver bug. This could be quite frustrating for Linux based OS users.
Solution
This was really frustrating… On Linux based OS, our keyboard driver is freesoftware (libre) and generic. As a consequence we are free to adapt it to fit our needs. One just needs to understand, proceed, and share (if one wants). This was an excellent challenge during my parental leave.
One day was spent digging to locate the place where the key repeat code appears. It's located inside the xkb portion of X server! Some more hours/evenings were spent to find the way to modify the key repeat behaviour without breaking the X server. Then some more hours/mornings were used to find more appropriate and elegant methods.
It results some patches at the moment, with an recompilation procedure for Archlinux. Everything has been published here:
https://git.framasoft.org/bobo/xkb_repeat
Unfortunately I reached my limit in C during my tentative of extension of the patch to support 3-keys repeat. I'm interested in guys troubleshooting, experimenting around, proposing patches, enhancing the stuff. Feel free to join the project. We could even work on a pattern based generic/parametrable n-keys repeat approach, that could be integrated in the upstream Xorg server, so that there is no debate whether this is a third party software approach or not ;-)
Other keyboard and mouse settings
I collected some more hints about input tuning. There are available here:
https://wiki.archlinux.org/index.php/StarCraft_2#Hints_for_advanced_hotkeys_settings
Generally you would find the most valuable set of tips for SC2 on Linux on the Archlinux wiki page dedicated to this game:
https://wiki.archlinux.org/index.php/StarCraft_2
Rapid Fire Hotkey throughput
Xorg keyboard autorepeat behavior can be modified. It may make sense to reduce delay before autorepeat starts (default=660 [ms]). Increasing a bit the repeat rate (default=25 [/s]) is a trade-off: speed vs accuracy.
To do it:
xset r rate <delay_to_activate_in_ms> <nb_of_repeats_per_second>
Enable Scrollclick
Some scrollclick demo videos, demonstrated terrific scrollclick applications, such as infestor spawning infested terran, scrollclick applied to protoss.
Using Xmodmap, it possible to set your regular 3-buttons mouse with scroll wheel to practice scrollclick. First change scroll fonction to "forward mouse button" and "back mouse button":
xmodmap -e "pointer = 1 2 3 8 9 6 7 4 5"
Then modify the hotkeys rolling for "TargetChoose" or/and "SmartCommand", scrolling the wheel up and/or down.
glhf !