Armchair Designer Lounge: Keybinds

This is less a suggestion and more a prompt for a conversation on sim inputs in general, with a light-handed focus on inputs in I:B. I felt Development would be more appropriate category than Suggestions given the lack of concrete ideas.

I’ve got my armchair game designer hat on today. I’ve been thinking of ways to work around the key-hungry nature of sims. In I:B, we have a number of radial menus already, which collapse a dozen keys into a single one. Radial menus see a lot of success in other genres, and they’re faster than lists, but too many options on a single radial can make accurate input difficult and having a 4th or 5th radial menu to keep track of feels daunting.

I think I:B supports chord keys, but I haven’t tested it. I’ve accidentally set keybinds to things like “joystick0button1+joystick0button13” sometimes, but I haven’t done it intentionally yet. Cleverly configured chords could keep keyboard clutter under control.

Holds vs presses are also a possibility. For targeting, a tap could target under cursor while a hold could target closest, as an example. Holds could instead open a radial menu to allow for functionality related to what the press does (or to change the function of a press).

Any complex set of binds risks becoming cumbersome for entry-level players. The sim crowd tends to accept a fully utilized keyboard as a fact of life, so I don’t think most folks here will have a problem with a big ol’ mess of binds. I:B is less esoteric than most others in the genre though, which I suspect will attract players who would usually stick with more arcadey experiences. They might need some handholding on the way to space jockey status (I’ve also got thoughts on the new player experience, but that’s a different post). Control unification is on the roadmap so I know this is in the works, I’m just eager to discuss ways it could be implemented.

What do you think works or doesn’t work as an input method in a game like I:B? What successes and missteps have you seen in past sims? I’d love to have some ideas to chew on.

1 Like

Believe it or not, but limitation makes people innovate and some games that are primarily or have been ported to console have complex actions accessible quickly form a limited amount of buttons.

Currently the game … or rather, the engine really, support single key-presses, inputs with requirements (modifier keys) and double tap.

Same inputs trigger events, others are polled for. Some only allow “button (Value from 0 to 1)” or “Axis (Value from -1 to 1)” inputs others only buttons. Some allow for inputs that have two axis in them “Hats” and thus the event in configured to just use one. As you can see, it is a complex topic.

Adding “hold” as an additional option besides “double tap” could work, there’s just one problem, the “polled for” events.

Let’s see how many such events there are:

  • All the flight control events (6DOF plus separated “UP/DOWN” buttons) (20 events)
  • Turbo
  • Brake
  • CapshipTurn
  • Primary Fire
  • Secondary Fire
  • Maybe Missile fire? Not sure here.
  • View
  • View control events
  • Zoom
  • Radial Menu events (3 events)

It’s about twenty percent of all events. So not negligible.
Thing is with a “Hold=“true”” flag would be that, usually, there’s a fixed amount of time until the hold is triggered, so that normal button presses can be executed before the hold functionality is. How long should be held? Is that time same for every functionality? It sounds like a bit of a headache.
Any button that is bound to these polled events can’t be used for a “hold” event for instance … there are already many caveats with the bindings system, it could get even more complex.

As I see it: Event, Polled, Held, Double Tap seem to be mutually exclusive.
Symilar to the type of input being mutually exclusive. It could be handled the same way. Currently “Polled” and “Events” are not visible in the keymapping

Now, is there a way to make it less complex? Maybe, by giving the players even more options. It’s a bit risky though. You might be able to reveal all these options to the players as a dropdown box:
“Check once”
“Check constantly”
“Hold”
“Double Tap”

I once did a mockup for a keybinding unification suggestion I made using the .xml files. You may want to try it too.

2 Likes

Thank you for the information on how the engine handles input, that’s going to give me a fair amount of mental fiber. I agree with the relationship between limitation and innovation, and now that I’m more familiar with the limitations I’ll hopefully be more constructive! Ty!

Something concrete like a keybind mockup would probably be more useful and better for discussion. I read this morning that controller support is one of Flavien’s goals, so some control choices are starting to make more sense to me (the radials in particular).

I am looking forward to becoming more familiar with the game, engine, and design ethos. It has been a great experience!