Keybinding & Aliases

1    About this Guide

2    The Unreal System Console and the Advanced Options

3    Keybinding

4    Aliases

5    Useful Aliases & Keybinds

6    Troubleshooting

7    Complete list of Unreal Commands

1 About this guide

Disclaimer and Copyrights

This is an unofficial FAQ. Nothing of what is written herein has been authorized by the makers of Unreal: Epic Games, Digital Extremes or GT Interactive Software.

You alone are responsible for your computer system! If following any of the suggestions in this FAQ causes your Unreal or even OS to crash, I shall not be held liable for that. You are strongly recommended to back-up your Unreal and OS system files before doing any modifications as suggested in here.

2 The Unreal System Console and the Advanced Options

What is the system console?

The console is a little window, that is used to enter commands and to see Unreals system messages. You bring it up by hitting the [~] tilde key.

You can also use the simple console command line by hitting the [Tab] key. Here you can only enter commands, but not read the system messages.

How do I enter the "advanced options" menu?

Bring up the console (see above) and type "preferences" (without the ") and the advanced options window will pop up or you can access it by the menu window. I would recommend to switch Unreal to windowed mode before, so you can leave both windows permanently open and can see the effect of your changes instantly.

For users, who work with the Advacned Options frequently, I recommend to bind a key:


Is there a list of all Unreal console commands and starting parameters?

The official list of Unreal starting parameters, console commands and cheatcodes can be found on Epic's Unreal Tech Page:

The page contains a few errors and the explanation of the commands is often very brief, but it is virtually the only list available. All other lists are just mirrors.

How can I repeat a command?

In the console, hit the cursor up key to repeat the last command. The same works with text messages using the SAY command [T] key or TEAMSAY [R] key command.

3 Keybinding

How do I bind a command to a key?

There are a few ways to do this, through the Advanced Options or by editing the Unreal\System\User.ini., it doesn't matter on how you do it, you will acheive the same result. In any case, the resulting keybind is saved to the Unreal\System\User.ini.Open the file user.ini in your unreal\system folder. Use notepad or similar to edit the file, DO NOT use Word etc.

    I personally prefer to go through the Advanced Options menu, because I can keep Unreal running in the background, switch back and forth between Unreal and the Advanced Options menu and see the effect virtually instantly without restarting Unreal. (Each time you close the advanced options, Unreal activates the changes you made!) This is even easier, if you switch Unreal to windowed mode before you enter the Advanced Options menu. Furthermore in the advanced options the keys are sorted alphabetically; in the INI they are not.

    1. From the Console (for non-standard commands)

    Open the console and type:

    Set input <key> <command>

    For example to bind the left mouse button to fire:

    Set input leftmouse fire

    The key is binded permanently. You can check the result in the Advance Option or the user.ini.

    1. From the Advanced Options (for non-standard commands)

    Open the Advance Option menu as described above and expand the
    [Advanced] [Raw Key Bindings] view.

    Look for the key you want and put your command in the assigned slot.

    Close the Advance Option.

    1. From the USER.INI (for non-standard commands)

    As described above, I prefer way 2., which has the exact same result, but is much easier. This is a matter of taste and in some situation a simple INI-edit may be faster.

    Open your Unreal\System\User.ini and look for the [Engine.Input] section. In that section you find the aliases. Further down you find all the key-binds. Look for the key you want. Do not add a line for your key as this will mess up the keybinds! It is already there somewhere, so just search. When you’ve found it, put in your command, save and close the file and restart Unreal.

    What commands can I use in keybinds or aliases?

    Any console command (see above) can be binded to a key directly or via an alias. Furthermore there are the basic commands, that are not listed on Epics console command page. Look through your Unreal\System\defuser.ini for these simple commands.

    Can I bind more than one commands to a key?

    Combining keys is actually pretty simple, in  Key Bindings.  All you have to do is divide the commands with a "|" by typing the one command where you normally would type it (see How to bind a key) followed by a single space, a vertical bar (the "|" character, located above the return key), another single space, and the other command.

    For example to jump and at the same time fire, the command would be:

    Jump | Fire

    If your command sequence does not work, you do not have to abandon hope. For a some reason many sequences that do not work as a simple keybind, work fine, if you define them as an alias. So try that!

    Can I bind a key to the release of a key?

    Yes, you can not only assign a command to the striking of a key, but also to the releasing of a key! So a common combination is to assign one command to pressing a key and an other to releasing a key. For example:

    F1=ShowScores | onrelease ShowScores

    This makes the Scoreboard come up when you hold down F1 and makes it disappear, when you release F1.

    How can I cycle through a sequence of command with one key?

    This can be useful in some cases. For example if you want to have several taunts, but only one key.

    You have to define an alias (see next section) for each command, like this:

    Aliases[x]=(Command=<command_1> | set input <key> <name_2>,Alias=<name_1>)

    Aliases[x+1]=(Command=<command_2> | set input <key> <name3>,Alias=<name_2>)

    Aliases[x+n-1]=(Command=<command_n-1> | set input <key> <name_n>,Alias=<name_n-1>)

    Aliases[x+n]=(Command=<command_n> | set input <key> <name_1>,Alias=<name_n>)


    Look below in the alias list, item 4, for a simple example.

    How to change ANY game setting through console commands?

    Virtually any setting that can be changed through the menues and (even some that are in no menu) can be changed in-game through console commands. And as I said: Any console command can be bind to a key. Only some few changes need a re-connect or map-change to take effect.

    The powerfull allround command is:

    Set <class> <variable> <value>

    Now all you have to do is find out the class and variable for the setting that you want to change. To do this, search through your user.ini and your unreal.ini files. Find the line that is most likely the setting you want to change. Check how the paragraph is called that the line is in. The name is in [...] brackets on top.

    For example if you want to change your mouse sensitivity, you'll find the following paragraph and line in the user.ini:

    [Engine.PlayerPawn]                  <- This is the class.

    MouseSensitivity=4.500000        <- This is the variable and value

    So the command to change the mouse sensitivity through console to a value of 8 would be:

    Set Engine.PlayerPawn MouseSensitivity 8

    4 Aliases

    What is an alias?

    An alias is a pre-defined sequence of commands assigned to a name for faster execution. Aliases can be bind to keys as a single command or be used in other aliases.

    Unreal aliases are not as powerful as those for other games, which is fine to me. Many people - incl. myself - consider too powerful aliases as cheating. Your skill in Unreal should be based on how well you can handle mouse and keys, not how good you can write scripts!

    How do I define an alias?

    Just like advanced keybinds, you can do it two ways: Through the Advanced Options or through editing the Unreal\System\User.ini file. For the same reasons as explained above, I recommend using the Advanced Options. Even more here, as an alias will usually not work with the 1st attempt and the easy switching between Unreal and the Advance Options without Unreal restart gives it a clear advantage.

    1. From the Advanced Options

    Open the Advanced Option menu as described above and expand the [Advanced] [Key Aliases] view.

    Each alias consists of two lines:

    The name line and the command line.

    Put in your command sequence and give it a name. Done!

    1. From the USER.INI (for non-standard commands)

    Look for the [Engine.Input] section. Here you will find many lines like this:

    Aliases[0]=(Command="Button bFire | Fire",Alias=Fire)

    Just add your alias to the bottom of the list by putting in your command sequence and giving it a name.

    Aliases[<put number here>]=(Command="<put command here>",Alias=<put name here>)

    Save and close the file.

    You can now use the alias name as a command, just like any other command.

    5 Useful Aliases & Keybinds

    What are useful aliases / keybinds?

    This is a list of aliases, that I found useful, so I have been using them or still use them:

    1. Weapon Grouping

    MouseWheelUp=Getweapon Stinger | getweapon GESbiorifle | Getweapon Flakcannon

    This is just an example for weapon grouping. What the keybind will do is switch to the last weapon of the row, that you have and that you have ammo for. If your already hold that weapon the moment you press the key, you switch to the next lower weapon. This way you can define a weapon group (here: Short Range Weapons) with priority increasing to the end of the group and cycle between the best two weapons of that group.

    You can use any weapon in these groups and as many as you want. These are the correct names to be used:

    DispersionPistol, AutoMag, Stinger, ASMD, Eightball, FlakCannon, Razorjack, GESBiorifle, Rifle, Minigun

    1. Cycle Strafe

    Aliases[#]=(Command="Axis aBaseX Speed=-20.0 | Axis aStrafe Speed=+300.0",Alias=CycleStrafeRight)
    Aliases[#]=(Command="Axis aBaseX Speed=20.0 | Axis aStrafe Speed=-300.0",Alias=CycleStrafeLeft)


    Beginners may find it useful to get some help with cyclestrafing. This alias will make you turn while sidestepping, so you do an automatic cyclestrafe. You can adjust the radius of the cyclestrafe by adjusting the aBaseX Speed. The higher the value, the more you turn.

    1. Scoreboard

    <key>=ShowScores | onrelease ShowScores

    Lets the Scoreboard show up only as long as you hold down the <key>.

    1. Fast Translocator Switching ( for Assault)

    Aliases[#]=(Command=" getweapon translocator | onrelease altfire | onrelease switchtobestweapon",Alias=translocate)

    Beginners, who are not so trained with fast wepon switching may find a keybind useful, that helps you with fast translocator switching. This is the one, that I found most useful. You press the key, hold it down, fire the TL where you want it (manually) and release the key to be translocated. Afterwards you automatically switch to the best weapon.

    1. InstantRockets ( for Assault)

    <key>=setinstantrocket 0 | onrelease setinstantrocket 1

    Players using Instant rockets by default may want to load multiple rockets from time to time. This keybind disables instant rocket firing as long as you hold down the key. If you use instant rockets off by default, just reverse the keybind for the opposite effect.

    For a one-key-toggle, you would have to use the command cycle technique described above

    Aliases[#]=(Command= setinstantrocket 0 | set input <key> IR_on,Alias=IR_off)

    Aliases[#+1]=(Command= setinstantrocket 1 | set input <key> IR_off,Alias=IR_on)


    1. Hammerjumping ( for Assault)

    Aliases[#]=(Command="jump | fire",Alias=jumpfire)

    <key>=getweapon impacthammer | onrelease jumpfire | onrelease switchtobestweapon

    This lets you do a small hammerjump (hammer not fully loaded). Just press the key, hold it and point the hammer at the ground, then release the key. It is not as high as the real hammerjump, but it is easy to time and is high enough to do the most useful hammerjumps.

    To do a full height hammerjump, use:

    Aliases[#]=(Command="onrelease jump",Alias=releasejump)

    <key>=Fire | releasejump

    For some reason it does not work to bind the onrelease jump directly to the key. You need the alias.

    1. ASMD Combo

    Aliases[#]=(Command="altfire | onrelease fire",Alias=Combo)


    This alias is not very useful because it does not help you with the things that make the combo difficult: Aiming and Timing. But the alias is listed, just to show you that it works.

    1. Dodging

    Sorry, there is no alias for dodging. Many have tried to find it and nobody has managed to do so.

    1. Text message to all players

    For example:

    <key>=say Hi all!
    <key>=say gg
    <key>=say Nice Shot!

    These are just a few examples of keybinds you can add so you don't have to stop and type these common messages ingame.

    1. Text-Message / Movement Combinations

    For example:

    <key>=teamsay Friendly Fire hurts! | taunt wave

    I like to combine text messages and gestures by using the pipe key. The pipe key connects two or more commands together. The example above prints the text message "Friendly Fire hurts!" and makes you wave at the same time.

    1. Fast Cheatcodes

    <key>=god | allammo

    Sometimes, it is just necessary to cheat to do some tests.

    1. Fish-Eye Behindview

    <key>=behindview 1 | FOV 120 | onrelease behindview 0 | onrelease FOV 90

    Did you know that in behindview mode, you can look around corners? This works even better with an increased "field of view" (fish-eye). This keybind switches to fisheye behindview while holding down the key.

    If FOVs >90 are disabled by the server admin, this part of the alis is ignored, but the behindview still works.

    It is also handy to switch to 1st person view while spectating a teammate.

    1. 1st person Team Spectating View

    <key>=viewteam | behindview 0

    Cycles through the views of your teammates in 1st person view. To switch back to your own view, use:

    <key>=ViewPlayerNum 0

    1. Sniper Crouch Toggle

    <key>=getweapon rifle | toggle bDuck

    When I snipe, I like to crouch so I'm harder to see or be shot. This keybind gets the sniper rifle and goes to permanent crouch. As soon as the normal crouch key is hit, everything is reset to normal.

    1. Advanced Options

    <key>=EndFullscreen | Preferences

    I use the advanced options quite often, so I bind a key to it. Furthermore I like to switch to windowed mode, so I can test the result of the changes I made without switching back and forth

    1. Disconnect

    <key>=Cancel | disconnect

    To deal with the Unreal bug, that some servers keep sending your data packets after disconnect, bind a key to disconnect and hit that key repeatedly to make sure, that the server got your command.

    These are just a few, that I found useful. There are a lot more out there.

    6 Troubleshooting

    I wrote an alias / keybind, but it doesn’t work. Why?

    Provided that you did the above mentioned thing right, there are still several reasons why an alias may not work, although it consists of a sequence of commands, that work very well, when they are used single:

    -        Epic disabled the combination of some commands

    As I understand, Epic made it impossible to use certain commands together in an alias to prevent aliases to become too powerful. This applies especially for most movement commands (forward/back/strafe) in combination with fire commands and onrelease.

    Sometimes you can still get the command to work in an alias /keybind trying around with splitting it into several aliases /keybinds and then combine them.

    -        Wrong key

    Some keys seem to have problems to be recognized correctly by Unreal. These are especially LeftShift / RightShift and LeftCtrl / RightCtrl. But there are some more. So if your alias does not work with the keys you want, try an other one before you give up.

    -       Timing problems

    Be aware, that a sequence of commands defined in an alias is executed virtually instantly at the same time. There is no way to delay the execution of a command. But some commands (for example switching a weapon) need some time to be executed. So if you put other commands behind a command, that needs time to be executed, these following commands may get lost.

    -       Online problems

    I had many cases, where an alias worked perfect offline, but was not reliable online. Some commands out of the sequence randomly got lost. I guess this has to do with the same timing problems as mentioned above in combination with the lag and packetloss of online gaming.

    An alias completely messed up my keybinds. What happened?

    Sometimes strange effects happen with aliases, especially online:

    If you get killed while holding down the key or parts of the command sequence get lost due to online lag, the alias key does not do any more what it is supposed to do:

    For example the above mentioned:

    F1=ShowScores | onrelease ShowScores

    If one of the two commands is lost, the command will be reversed: The scoreboard will be permanently visible and disappear while you hold down F1. The only way to get out of this in this case is to enter ShowScores into the console.

    Equal problems happen with weapon switching aliases and set-input commands.

    Often the only solution to get out of this is to disconnect and restart Unreal. Very annoying, when you have a good game.

    An other solution is to bind a key, that resets your keybinds.

    Spam Killer

    Back To Top
    2005 Sniper's Paradise
    All logos and trademarks are properties of their respective owners.
    Unreal™ is a registered trademark of Epic Games Inc.
    Privacy Policy
    Website by Softly
    Powered by RUSH