-
Notifications
You must be signed in to change notification settings - Fork 2
Controls
Both keyboards and game controllers are natively supported by Open Manifold. Most common game controllers should work right out of the gate, and further support can be added via SDL's gamecontrollerdb.txt; place this file in the same directory as the game's executable if you want to use it.
Below is a chart showing what each key and/or button is mapped to by default. Note that the button(s) column assumes an Xbox 360-style controller layout.
| Button(s) | Keyboard Key(s) | Action |
|---|---|---|
| D-Pad | Arrow Keys |
Navigate Menu Move Shape |
| Start | Return/Enter |
Confirm Menu Selection Open Toolbar (in Sandbox) |
| Back | Backspace | Return to Previous Menu |
| B | Z |
Circle Return to Previous Menu |
| X | X |
Square Confirm Menu Selection |
| Y | C | Triangle |
| A | V |
X-plode Place Shape (in Sandbox) |
| LB | A | Shrink Shape |
| RB | S | Grow Shape |
If you find the default button layout uncomfortable, you can rebind them by going to the Options menu, then to Controller Settings. Select either Rebind Keyboard or Rebind Controller depending on your device of choice, and from there you can remap particular buttons. You can also select Rebind All to rebind all the inputs from top to bottom.

If you accidentally corrupt your input bindings, you can reset them in the Options menu as well with the Reset Keyboard Binds and Reset Controller Binds options. If for whatever reason you can't access either of those, as a last resort you can either delete or modify config.json to remove the faulty bindings, or replace them with these defaults:
"key_map": [
"Up",
"Down",
"Left",
"Right",
"Z",
"X",
"C",
"V",
"A",
"S",
"Return",
"Backspace"
],
"button_map": [
"dpup",
"dpdown",
"dpleft",
"dpright",
"b",
"x",
"y",
"a",
"leftshoulder",
"rightshoulder",
"start",
"back"
]