• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 01:37
CET 06:37
KST 14:37
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
[ASL21] Ro24 Preview Pt1: New Chaos0Team Liquid Map Contest #22 - Presented by Monster Energy5ByuL: The Forgotten Master of ZvT30Behind the Blue - Team Liquid History Book19Clem wins HomeStory Cup 289
Community News
Blizzard Classic Cup @ BlizzCon 2026 - $100k prize pool38Weekly Cups (March 9-15): herO, Clem, ByuN win42026 KungFu Cup Announcement6BGE Stara Zagora 2026 cancelled12Blizzard Classic Cup - Tastosis announced as captains18
StarCraft 2
General
Potential Updates Coming to the SC2 CN Server Blizzard Classic Cup @ BlizzCon 2026 - $100k prize pool Weekly Cups (March 2-8): ByuN overcomes PvT block Weekly Cups (August 25-31): Clem's Last Straw? Weekly Cups (March 9-15): herO, Clem, ByuN win
Tourneys
World University TeamLeague (500$+) | Signups Open RSL Season 4 announced for March-April Sparkling Tuna Cup - Weekly Open Tournament WardiTV Team League Season 10 KSL Week 87
Strategy
Custom Maps
Publishing has been re-enabled! [Feb 24th 2026]
External Content
Mutation # 518 Radiation Zone The PondCast: SC2 News & Results Mutation # 517 Distant Threat Mutation # 516 Specter of Death
Brood War
General
Soulkey's decision to leave C9 JaeDong's form before ASL BGH Auto Balance -> http://bghmmr.eu/ [ASL21] Ro24 Preview Pt1: New Chaos ASL21 General Discussion
Tourneys
[Megathread] Daily Proleagues ASL Season 21 LIVESTREAM with English Commentary [BSL22] Open Qualifiers & Ladder Tours Small VOD Thread 2.0
Strategy
Fighting Spirit mining rates Simple Questions, Simple Answers Soma's 9 hatch build from ASL Game 2
Other Games
General Games
General RTS Discussion Thread Stormgate/Frost Giant Megathread Nintendo Switch Thread Path of Exile Dawn of War IV
Dota 2
Official 'what is Dota anymore' discussion The Story of Wings Gaming
League of Legends
G2 just beat GenG in First stand
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
TL Mafia Community Thread Five o'clock TL Mafia Mafia Game Mode Feedback/Ideas Vanilla Mini Mafia
Community
General
US Politics Mega-thread Things Aren’t Peaceful in Palestine YouTube Thread Canadian Politics Mega-thread Russo-Ukrainian War Thread
Fan Clubs
The IdrA Fan Club
Media & Entertainment
Movie Discussion! [Req][Books] Good Fantasy/SciFi books [Manga] One Piece
Sports
2024 - 2026 Football Thread Cricket [SPORT] Formula 1 Discussion Tokyo Olympics 2021 Thread General nutrition recommendations
World Cup 2022
Tech Support
Laptop capable of using Photoshop Lightroom?
TL Community
The Automated Ban List
Blogs
Funny Nicknames
LUCKY_NOOB
Money Laundering In Video Ga…
TrAiDoS
Iranian anarchists: organize…
XenOsky
FS++
Kraekkling
Shocked by a laser…
Spydermine0240
Unintentional protectionism…
Uldridge
ASL S21 English Commentary…
namkraft
Customize Sidebar...

Website Feedback

Closed Threads



Active: 4762 users

[G]How to remap any key on cheap keyboards

Forum Index > StarCraft 2 Strategy
Post a Reply
masky007
Profile Joined December 2015
15 Posts
Last Edited: 2016-04-15 23:31:54
April 12 2016 22:44 GMT
#1
I'll show you how you can transform your cheap 5$ keyboard to expensive gaming dedicated keyboards like razor's balckwidow (ofc the quality of your keys will stay the same but those keyboards have very special features like remapping keys, or recording macros). This tutorial will show you how to do just that, with any keyboard.
Starcraft 2 let's you rebind almost any key in the hotkey setup, but not every key. For example you can't change modifiers like Shift or Ctrl etc. So basically, you can't change that in Starcraft 2 alone, unless you have expensive keyboard or you use 3rd party software, and sometimes you want to do it...


You will need 3rd party software called AutoHotkey.
(some of you may already know about this software, and how to use it - great stop reading, you will find nothing new here i believe.)
AutoHotkey - Download link (click)
How to install

Short tutorial how to create a simple script:
+ Show Spoiler +
1. Right-Click on your desktop.
2. Find "New" in the menu.
3. Click "AutoHotkey Script" inside the "New" menu.
4. Give the script a new name. Note: It must end with a .ahk extension. Ex. MyScript.ahk
5. Find the newly created file on your desktop and Right-Click it.
6. Click "Edit Script".
7. A window should have popped up, probably Notepad. If so, SUCCESS!
8. Remove the line
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.

(because it can cause the ctrl to get stucked on certain machines)
9. At the end of the script add these two lines of code after the text:

LCtrl::LShift
Return

This makes the LCtrl to act as a LShift. If you want to change any other key first you type the key you want to change add "::" and type the desired key to remap it.

9. Save the changes
10. Run the script. (icon of AutoHotkey would appear in your system try that the script is running. You can right click to pause, reload or exit etc. As long as the script is running keyboard will be affected by your script, unless you pause or close the script.
You can do crazy stuff with AutoHotkey, so If you want to learn more about scripting follow the detailed help file of AutoHotkey.


My script for egg-hotkeying and selecting (remapped LShift with LCtrl):
+ Show Spoiler +
You can download it from here
I have added 1 more line of code that makes the script active, only when the Starcraft 2 window is active, so i can use my keyboard normally when i am not playing Starcraft.
I have also added a shortcut of my script in the Windows Startup folder, so my script runs when i turn on my computer.
If you don't know how to put the script in the startup folder:
+ Show Spoiler +
1. Press the windows key on your keyboard
2. In the search bar type "run" (without the quotes) and press "Enter"
3. In there type in "shell:startup" (without the quotes) and press "Enter". This will open a folder for you (this is the Windows startup folder) create a shortcut from your script there, or simply put the script there.
Now whenever you start your PC the script will be active (but also only when you are playing SC2.


How i use AutoHotkey for SC2 (egg-hotkeying method for Zerg):
+ Show Spoiler +
Specifically i use AutoHotkey to change the behavior of the LShift and LCtrl, i actually only swap those with one another. My reason is simple, i play zerg, and i egg-hotkey.
The egg-hotkey method on standard hotkey setup looks like this:
+ Show Spoiler +
1. produce units from larvae
2. LCtrl+click on the eggs //selects only the eggs without the rest of the larvae
3. LShift + control group [number] //adds the selected eggs in an existing control group or creates new if you haven't already..

After the swapped LShift with LCtrl the method looks like this:
+ Show Spoiler +
1. produce units from larvae
2. LShift+click on the eggs //selects only the eggs without the rest of the larvae
3. LShift + control group [number] //adds the selected eggs in an existing control group or creates new if you haven't already..

It makes much more sense for egg-hotkeying right? Instead of holding down LCtrl than LShift to add the morphed units it to a control group, you only hold down LShift, click, and press a number without letting off the LShift.
- The drawback of this method is that you'll need to rebind every hotkey from Shift to Ctrl (and vice versa) in the hotkey setup in SC2. Becase you want everything else to stay (act) the same way as before (expect for this). Also your quee command is now on the CTRL instead of the SHIFT (no workaround for this without cheating and loong code).
- Selecting units now makes much more sense to me (perhaps because i am used working on Windows, holding down Ctrl to select or deselect from selection - now selecting/deselecting units, works the same in SC2 as in Windows, instead using the old way, with "Shift" to select or deselect units.
-You need like less than a week to get used to this method and you won't regret it. PiG actually uses this in his experimental "The Core" hotkey layout (he told me in the comments in one of my posts on reddit). I use it myself and i really love it. I believe you will as well
If you don't know how to egg-htokey you can learn from this tutorial in great detail


WARNING
+ Show Spoiler +
EDIT: While the above method is not against the Blizzard's terms of use (because as long as "1 key press = 1 action" is allowed), though hoby2000 (in the comments) has a legit point.
UPDATE: To compensate for the concern that Blizzard can scan your running processes and simply get you banned for only using a software that's on their "watch list" while playing the game. For that matter we will do a workaround: We will mask the process with already existing (and widely popular process - Google Chrome (32 bit)

Here is a link to the compiled script (if you use the compiled script make sure to put that in your StartUp folder and remove original .ahk script from there if you did that earlier)
If you are concerned with safety of the .exe i provide (i totally understand), or you want to do it yourself in your own scripts, here is how:
+ Show Spoiler +
1. Make sure you have installed google chrome, AutoHotkey (with the compiler) and Resource Hacker (download link)
2. Compile your script with AutoHotkey (here is how to do it), name your compiled script compiled_chrome.exe (for icon google search "google ico" and download and use that .ico file to compile yous script with)
3. Open your compiled script in Resource Hacker
4. Open another instance of Resource Hacker and open the original google chrome "chrome.exe" located in "C:\Program Files (x86)\Google\Chrome\Application" (now you have side by side the script and the original chrome exes)
5. In both instances of Resource Hacker navigate to "Version info> 1 : 1033"
6. Copy the whole code (on the right side in Resource Hacker) from the original chrome and paste it (replacing the original code) in your compiled script instance in resource hacker.
7. Press the compile button
8. File>Save As and name your file this time "chrome.exe"
That's it.
note: Actually you don't have to use google chrome specifically to mask your scripts, you can do it with any other .exe and you will mask it with just another name, or you could fill in the information with something entirely random.



Also i have opened a thread on Blizzard official forums asking specifically for that matter and you can track it yourself here(still waiting for Blue to give a answer):
http://us.battle.net/sc2/en/forum/topic/20743114221

So final notice: I think the chances to get you banned for this is very very low especially if you compile and mask your script. And even if blizzard can sniff something suspicious (which i highly doubt it) they will probably first warn you before perma-ban you. And after all this is only a swapping the modifiers as you would with a keyboard that has the built in functions for that... which is 100% allowed by Blizzard.
Final words: Use at your own risk.


SAFE ALTERNATIVE:
+ Show Spoiler +
If you are still concerned about the safety of your account and you still want to do this, you can use other software such as KeyTweak (download) - With this program the changes are made directly in to the registry and the downside is that you need to restart or relog your PC for the changes to take effect. (that was the killer thing that forced me to use AutoHotkey - it sucks reloging windows back and forth every time i want to play starcraft)
hoby2000
Profile Blog Joined April 2010
United States918 Posts
April 12 2016 23:37 GMT
#2
Your warning means nothing. Blizzard isn't going to inspect your script. They don't give a shit. If you run AHK while playing on Bnet, you will be banned eventually. Or if someone thinks you're hacking despite using AHK for legitimate reasons, you will still be banned.

Your whole schpiel about "1 for 1 and we are good" is not a reason Blizzard will even consider. They detect programs and I bet you this is on their hot list. Again, they won't read your script, they will just see you're running a program that could easily be used for cheating.
A lesson without pain is meaningless for nothing can be gained without giving something in return.
masky007
Profile Joined December 2015
15 Posts
Last Edited: 2016-04-15 23:37:36
April 13 2016 00:15 GMT
#3
On April 13 2016 08:37 hoby2000 wrote:
Your warning means nothing. Blizzard isn't going to inspect your script. They don't give a shit. If you run AHK while playing on Bnet, you will be banned eventually. Or if someone thinks you're hacking despite using AHK for legitimate reasons, you will still be banned.

Your whole schpiel about "1 for 1 and we are good" is not a reason Blizzard will even consider. They detect programs and I bet you this is on their hot list. Again, they won't read your script, they will just see you're running a program that could easily be used for cheating.


You actually might be right (Why i will be updating this tomorrow - it's too late now)! However blizzards cheater scan program is actually scanning for much more than the processes only, like time between pressed keys, repetiton of the time lag in between - basicly scanning for cheaters in many more advanced methods. The script in the guide is legit is not against the rules, however you are right they might just ban you for using the AHK, and won't scan your script if its ok or not - however there is a way to hide the process from blizzard, and be safe against it. Tomorrow when i have the time i will update the guide setp by setp how to do it - you only have to compile the script into exe and give a name to already existing process, e.x. SVCHOST.EXE or Google Chrome.exe etc..

EDIT: the guide has been updated
TedBurtle
Profile Blog Joined April 2014
Belarus201 Posts
Last Edited: 2016-04-13 04:51:21
April 13 2016 04:10 GMT
#4
you can change hotkeys in game, and its not matter what KB you are using ;/ why bothering with some soft
Unbeatable Protoss
masky007
Profile Joined December 2015
15 Posts
April 13 2016 11:23 GMT
#5
On April 13 2016 13:10 TedBurtle wrote:
you can change hotkeys in game, and its not matter what KB you are using ;/ why bothering with some soft

Why do you comment on an article when you haven't even read the first few lines?
joshiraj5
Profile Joined April 2016
4 Posts
April 14 2016 09:30 GMT
#6
--- Nuked ---
TedBurtle
Profile Blog Joined April 2014
Belarus201 Posts
April 14 2016 10:11 GMT
#7
On April 13 2016 20:23 masky007 wrote:
Show nested quote +
On April 13 2016 13:10 TedBurtle wrote:
you can change hotkeys in game, and its not matter what KB you are using ;/ why bothering with some soft

Why do you comment on an article when you haven't even read the first few lines?

i've read whole thing...and all your examples can be done in game ;/
Unbeatable Protoss
insitelol
Profile Joined August 2012
845 Posts
April 14 2016 10:56 GMT
#8
"For example you can't change modifiers like Shift or Ctrl etc".
Less is more.
TedBurtle
Profile Blog Joined April 2014
Belarus201 Posts
April 14 2016 13:37 GMT
#9
On April 14 2016 19:56 insitelol wrote:
"For example you can't change modifiers like Shift or Ctrl etc".

Yeah, you can do it in sc2 in game ;/ ....

Options->Hotkeys -> Global ->Control groups....
Unbeatable Protoss
insitelol
Profile Joined August 2012
845 Posts
April 14 2016 16:13 GMT
#10
Please stop this. You can't bind E,R,T etc as a modifier key.
Less is more.
masky007
Profile Joined December 2015
15 Posts
April 14 2016 16:53 GMT
#11
On April 13 2016 08:37 hoby2000 wrote:
Your warning means nothing. Blizzard isn't going to inspect your script. They don't give a shit. If you run AHK while playing on Bnet, you will be banned eventually. Or if someone thinks you're hacking despite using AHK for legitimate reasons, you will still be banned.

Your whole schpiel about "1 for 1 and we are good" is not a reason Blizzard will even consider. They detect programs and I bet you this is on their hot list. Again, they won't read your script, they will just see you're running a program that could easily be used for cheating.


I updated the "WARNING" section - now the script is masked as google chrome in the running programs/processes.
jake1138
Profile Joined September 2011
United States82 Posts
April 14 2016 19:17 GMT
#12
I use AHK to unbind the mouse "back button" in browsers. I've had that running for years. I've never gotten banned by Blizzard so I doubt running AHK or any keyboard/mouse rebinding software will get you banned.
masky007
Profile Joined December 2015
15 Posts
April 14 2016 22:10 GMT
#13
On April 15 2016 04:17 jake1138 wrote:
I use AHK to unbind the mouse "back button" in browsers. I've had that running for years. I've never gotten banned by Blizzard so I doubt running AHK or any keyboard/mouse rebinding software will get you banned.

Nice to know, though i have found some instances where people got banned in other blizzard games for using AHK (but they were botters/cheaters if i remember well so it might seem they don't just ban people when they see the process)
Iksf
Profile Joined March 2011
United Kingdom444 Posts
Last Edited: 2016-04-15 17:45:29
April 15 2016 17:26 GMT
#14
Always used SharpKeys


So final notice: I think the chances to get you banned for this is very very low especially if you compile and mask your script. And even if blizzard can sniff something suspicious (which i highly doubt it) they will probably first warn you before perma-ban you. And after all this is only a swapping the modifiers as you would with a keyboard that has the built in functions for that... which is 100% allowed by Blizzard.


Just because Blizzard can't detect it doesn't mean its ethically sound. Personally I don't really give a damn but plenty of people would argue this kinda stuff shouldn't be allowed, like the people who argued against that overlay build order thing program - equally a lot of people including myself on this one think things like select AI target / Jakatak's rapid fire should be removed. If I was organising a LAN tournament I certainly wouldn't be allowing the players to install things like Autohotkey on the computers.


However blizzards cheater scan program is actually scanning for much more than the processes only, like time between pressed keys, repetiton of the time lag in between - basicly scanning for cheaters in many more advanced methods.


Can guarantee from my own experience this isn't true. Firstly I use a PS/2 keyboard connector which gives higher repeat rates and never had any issue. Secondly I artificially increased the repeat rate and decreased delay with filterkeys on windows, no issue (and was very buggy with things like ctrl and shift getting stuck + ultimately didn't really find it very useful for gameplay). Thirdly I've played SC2 on Linux quite a lot as well as Windows, the options for setting the repeat rate and delay there are far better and work bug free in SC2, no ban.

I think people give Warden too much credit, need to remember Warden's far from brilliant success stopping hackers between WoW and SC2.

masky007
Profile Joined December 2015
15 Posts
Last Edited: 2016-04-15 23:37:09
April 15 2016 23:21 GMT
#15
On April 16 2016 02:26 Iksf wrote:
If I was organising a LAN tournament I certainly wouldn't be allowing the players to install things like Autohotkey on the computers.

-i wouldn't allow AHK on tournaments however, this, with AHK, is only useful when you don't own a keyboard that lets you rebind your keys on the fly (which keyboards like that are allowed at tournaments)

On April 16 2016 02:26 Iksf wrote:
Can guarantee from my own experience this isn't true. Firstly I use a PS/2 keyboard connector which gives higher repeat rates and never had any issue. Secondly I artificially increased the repeat rate and decreased delay with filterkeys on windows, no issue (and was very buggy with things like ctrl and shift getting stuck + ultimately didn't really find it very useful for gameplay). Thirdly I've played SC2 on Linux quite a lot as well as Windows, the options for setting the repeat rate and delay there are far better and work bug free in SC2, no ban.

I think people give Warden too much credit, need to remember Warden's far from brilliant success stopping hackers between WoW and SC2.


I am pretty sure Warden scans for different things that you stated, you increased the speed of your hardware, but only that.. Now Warden would scan for things like repetition over time.. check this out:
You have a macro that injects all 5 hatcheries in 2.258 seconds.. (random number of my head).
You press that key and 2.258 seconds
after that you do it again.. again 2.258..
do that in a number of ways and Warden will pick this and flag it as non-human behavior.

another eg. it could also pick that behavior up from the certain x.y position of the mouse clicks..
lets say you have some other cheating script that hand-helds your mining workers at the very beginning of each game (each worker to it's own mineral patch) so you loose least mining time when you start the game..
That script will have to select workers from specified x.y. coordinates on the screen. No human will press i.e. 112,22, 542,27 over and over gain - again repetition.

This is what Warden mainly looks in for - or game integrity for some dll injects..
And ofcourse that can be bypassed by giving randomization to variables, making it lot harder to detect.

What you all said is all fine, i think every more serious player made sure he gets out the most speed of his hardware, as you did, whatever way possible - that is 110% allowed.

(and was very buggy with things like ctrl and shift getting stuck + ultimately didn't really find it very useful for gameplay)

Did you tried the script? And it was buggy getting ctrl stuck? (i forget to mention that can happen on certain machines)
I compiled new one for you https://www.dropbox.com/s/g6igeaj6zvfkoiv/CtrlShiftSwapCompiled.v2.rar?dl=0
Or if you want to try the fix remove the line
SendMode Input (you can also remove everything after the ; at that line, as it states a comment)
from your script and it should be fine.
From gameplay point of view i love it man.. well perhaps its a little, but i love little things when pile up and than they make allot hell of a difference

edit: thanks for the input, ill put that as a note that can happen in the guide
edit2: updated the guide with the new link and added the step to remove the line for whoever finds this useful
Please log in or register to reply.
Live Events Refresh
Next event in 3h 23m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
WinterStarcraft583
StarCraft: Brood War
GuemChi 4895
ggaemo 35
ZergMaN 23
Noble 23
Icarus 15
Bale 13
Snow 10
League of Legends
JimRising 818
Super Smash Bros
C9.Mang0311
Other Games
Mew2King75
kaitlyn35
Organizations
Other Games
gamesdonequick699
Dota 2
PGL Dota 2 - Main Stream102
Other Games
BasetradeTV69
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 14 non-featured ]
StarCraft 2
• practicex 24
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• Azhi_Dahaki109
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
League of Legends
• Lourlo1382
• Rush1119
Upcoming Events
Replay Cast
3h 23m
Afreeca Starleague
4h 23m
Sharp vs Scan
Rain vs Mong
Wardi Open
6h 23m
Monday Night Weeklies
11h 23m
Sparkling Tuna Cup
1d 4h
Afreeca Starleague
1d 4h
Soulkey vs Ample
JyJ vs sSak
Replay Cast
2 days
Afreeca Starleague
2 days
hero vs YSC
Larva vs Shine
Kung Fu Cup
2 days
Replay Cast
2 days
[ Show More ]
KCM Race Survival
3 days
The PondCast
3 days
WardiTV Team League
3 days
Replay Cast
3 days
WardiTV Team League
4 days
RSL Revival
5 days
Cure vs Zoun
herO vs Rogue
WardiTV Team League
5 days
Platinum Heroes Events
5 days
BSL
5 days
RSL Revival
6 days
ByuN vs Maru
MaxPax vs TriGGeR
WardiTV Team League
6 days
BSL
6 days
Liquipedia Results

Completed

Proleague 2026-03-22
WardiTV Winter 2026
Underdog Cup #3

Ongoing

KCM Race Survival 2026 Season 1
BSL Season 22
CSL Elite League 2026
CSL Season 20: Qualifier 1
ASL Season 21
Acropolis #4 - TS6
RSL Revival: Season 4
Nations Cup 2026
NationLESS Cup
BLAST Open Spring 2026
ESL Pro League S23 Finals
ESL Pro League S23 Stage 1&2
PGL Cluj-Napoca 2026
IEM Kraków 2026
BLAST Bounty Winter 2026
BLAST Bounty Winter Qual

Upcoming

2026 Changsha Offline CUP
CSL Season 20: Qualifier 2
CSL 2026 SPRING (S20)
Acropolis #4
IPSL Spring 2026
BSL 22 Non-Korean Championship
CSLAN 4
Kung Fu Cup 2026 Grand Finals
HSC XXIX
uThermal 2v2 2026 Main Event
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 2026
Asian Champions League 2026
IEM Atlanta 2026
PGL Astana 2026
BLAST Rivals Spring 2026
CCT Season 3 Global Finals
IEM Rio 2026
PGL Bucharest 2026
Stake Ranked Episode 1
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.