A.T. Hun's Haus of Shogo
Site Info

What's New?
Old News
Interviews
Links
Contact A.T.


Shogo Info

About Shogo
Mecha (MCA)
On Foot
Walkthrough
Reviews
Tips & Tricks

Key Binding

There isn't much good information out there about how to bind (remap) keys in Shogo or how to program several actions to one keystroke. Shogo allows you to do a lot of this from the program itself, but, most notably, it doesn't allow you to remap weapons. This tutorial to show you how to do these things, hopefully in a way that is easy to understand.

Please note: This involves hand-editing your autoexec.cfg file in the Shogo folder. You'll need to load your autoexec.cfg into your favorite text editor. Notepad works nicely. Make sure to make a backup copy before you change anything! The Haus of Shogo cannot be held responsible for lost time, wages, or fits of weeping that come as a result of applying these changes.

The directive (a directive is a simply a command in your autoexec.cfg file) for binding keys in Shogo has this format:

     rangebind <device> <trigger> <low range> <high range> <action>

If you search through your autoexec.cfg you will find examples like this:

     rangebind "##keyboard" "1" 0.000000 0.000000 "Weapon_0"

This directive binds to the number 1 on the keyboard the action "Weapon_0". In other words, when you type "1" you will get Weapon_0 which is the Tanto Knife when on foot, or the Energy Blade, et al, when in an MCA. The "high range" and "low range" numbers have no effect on the keyboard. They are mainly used for binding commands to a certain direction that the joystick is pushed.

If you change the above directive to:

     rangebind "##keyboard" "Q" 0.000000 0.000000 "Weapon_0"

then the Tanto Knife / Energy Blade will come up when you press "Q". Please note: if you change one of the weapon bindings, Shogo will automatically add the original binding back in. So in the above example you will find both of these lines in your autoexec.cfg after you run Shogo:

     rangebind "##keyboard" "1" 0.000000 0.000000 "Weapon_0"
     rangebind "##keyboard" "Q" 0.000000 0.000000 "Weapon_0"

Apparently the program always wants to keep 1-0 defined as weapons keys in addition to whatever bindings you make.

Here's a list of the weapons actions and what weapon they correspond to. Check out my On Foot or Mecha (MCA) pages for more information on each weapon.

ActionDefault
Key
On-Foot WeaponMCA Weapon
Weapon_0
1
Tanto KnifeEnergy Blade, et al
Weapon_1
2
PistolsPulse Rifle
Weapon_2
3
ShotgunLaser Cannon
Weapon_3
4
Machine GunSpider
Weapon_4
5
Assault RifleBullgut
Weapon_5
6
Energy GrenadesSniper Rifle
Weapon_6
7
Kato GrenadesJuggernaut
Weapon_7
8
TOWShredder
Weapon_8
9
Squeaky ToyRed Riot
Weapon_9
0
Unknown *Unknown *
* There is a default action for a tenth weapon bound to "0", but the weapon that was intended to be there didn't make it into the final version of Shogo.

So to bind the TOW/Shredder to "R" (like I did) add this line to your autoexec.cfg after the section with all the other weapons bindings:

     rangebind "##keyboard" "R" 0.000000 0.000000 "Weapon_7"

Just a quick addendum: The AddAction directive adds a command to Shogo's list of commands. To actually make a new command, you will need to a) know C++, b) edit the Shogo source code, and c) distribute your changes as a MOD. The rangebind directive just tells Shogo which key (or joystick/mouse movement) will trigger that command. Thanks to ShogoTech for clearing that up for me.