Problem: only 4 axes are available ( left stick X+Y, right stick X+Y ) and 2 triggers, which act like buttons. Mapping another movement axis would then use another 2 buttons…
Ship systems:
Increase/decrease target speed in flight auto-assist mode
Flight auto-assist mode
Power
Warp
Front lights
Turbo
Camera mode
Zoom
Target selection ( screen-center ? )
Redirection modes
Speed alignment/formation modes
Proposal:
There are obviously too many commands to assign for the number of buttons or axes on the controller, however it is possible to do key/button combinations to enable new behaviors.
Main axes controls:
Left stick X = move left/right
Left stick Y = forward/backward
Right stick X = yaw left/right
Right stick Y = pitch up/down
Left trigger = fire main weapons
Right trigger = secondary weapons
Left bumper = turbo
Right bumper = enables alternative controls while it is kept pressed
Alternative controls:
Right bumper + Left stick Y = move up/down
Right bumper + Right stick X = roll left/right
Right stick button + Right stick X = head yaw left/right (in cockpit)
Right stick button + Right stick Y = head pitch up/down (in cockpit)
Left stick button + Left stick Y = increase/decrease target speed in flight auto-assist mode
Buttons:
A button (1) = Zoom
B button (2) = Select target in screen center
X button (3) = Flight auto-assist mode
Y button (4) = Warp
Back button (7) = camera modes
Start button (8) = game menu ( not implemented yet )
Left stick button (9) = change target speed in flight auto-assist mode
Right stick button (10) = head look-around mode ( while kept pressed ); double-tap = head reset ? (or automatic?)
Crosspad up = Power
Crosspad right = Change formation mode
Crosspad down = Front lights
Crosspad left = Change redirection mode
To be determined/discussed:
Target selection: on the keyboard there are at least 4 keys for target selection: previous, next, closest and screen-center. Which ones should be available on the controller ?
Head reset might not need a key, it would be possible to detect idle head movement and recenter the view automatically ?
Another button might be needed later for counter-measures ?
Do you see other functionalities that might need a button in the future ?
Instead of bothering with so many keys, it might be possible later on to do some kind of radial menu, for example for the ship systems
If you have other ideas for control bindings that might be more natural or easier to assimilate, feel free to post your own !
Being a passive flyer - enjoy just flying around and looking at things with the occasional PvP - I’m probably not the best person to weigh in. Actually your proposal looks fine and I would be pretty happy with that layout. The only thing I would really like to see is a camera in front so we can make unobstructed videos of scenery.
There probably won’t be a way to not drop an axis on a controller. Because there are only 5.
Yeah this is tricky. Though I think you’re onto something. I was all about writing something up … but yeah not bad.
Here’s some critique:
Key combos on controllers aren’t widely used for a reason … they are quite hard to execute. Mostly because you have to hold onto the controller while pressing a button, changing the position of your hands making it hard to press another button. That’s why most console games use stuff like long or double press. (But implementing that will probably make you go insane , looking at past week.) Radial menus would work great for I:B too, I think.
Key combos could maybe work after some training. Still would block stuff like trigger.
A button (1) = Zoom
B button (2) = Select target in screen center
Can’t aim while doing those. Which is kinda needed.
Left stick X = move left/right
Left stick Y = forward/backward -> up/down
I think strafing would be more important. And “click forward” is increase speed anyway in with FA on.
It really depends what plane they should have more agility in. You are probably right that a plane that cuts the target is of more use than one that is perpendicular to the target. (when aiming at the target)
@ Target Selection: I think select screen centre is the most useful.
@ Head Center: I think look would be used much more if it could be used fast. Having to hold (or rather flick) to look in a direction, once you let go you’re back in center again.
@ Another Button: Long press.
@ Another Function: Not ones that couldn’t replace or merge with others.
Re-inventing the wheel again. There sure must be a console game out there with insane good controls.
I think your proposal is good enough all the way to beta, then you could do another pass on it.
Heres my proposal, which is based on what I commonly encountered in flight vehicles in console games.
Main axes controls:
Left stick X = move left/right
Left stick Y = forward/backward
Right stick X = ROLL left/right
Right stick Y = pitch up/down
Left trigger = fire main weapons
Right trigger = secondary weapons
Left bumper = YAW LEFT
Right bumper = YAW RIGHT
Left stick button hold = MOVE UP
Right stick button hold = MOVE DOWN
Why:
The normal method of quickly changing the heading of a plane involves rolling and pitching. If I want to go right I roll right and pitch up and so on…
I actually tried this ingame with a xbox260 controller and a input-mapping-programm and this is what I feel is most natural.
Pro:
It works best in athmospheric flight.
Con:
The original proposal works better in space because there is no up/down and therefore no need to keep the ship stable horizontally.
Solution?:
Different controlls for space and athmospheric flight.
If you do that, you have to go all the way and figure out the other buttons. Because although your proposal looks fine for the axes, they use more keys for the axes so you’re going to have less of them to assign the remaining functionalities to the other keys…
True, but some functionalities could maybe also be streamlined. For example: instead of having a dedicated warp-button just double-tap the boost button.
I’d rather have some options in a menu (lights etc) than having to sacrifice important things like flight control buttons.
Good point. Unfortunately we don’t have radial menus or things like that just yet, so in the short term we’ll have to manage those limitations. But I agree that for the beta ( alpha ? ) we should probably have these menus to save buttons/keys.
I haven’t properly considered all the control implications, but for axes, I’m fan of echoing real life:
“Main” stick (left or right is your preference as devs): pitch and roll
secondary stick: strafing up/down/left/right
Triggers (like rudder pedals): yaw
I would argue speed doesn’t need to be on an axis by default, with the way it is currently set up. Just increase/decrease with some easy to reach buttons.
I think this would give maximum useful flight control options within easy reach using sticks on a controller.
Here is the profile and accompanying keymapping screen:
The screen goes into the folder:
C:\Program Files\I-Novae Studios\Battlescape\Dev\Client\GUI\Screens
The controller profile into:
C:\Users\YourName\Documents\Infinity Battlescape\Profiles
I recommend controller sensitivity of about 40 to 50%.
Invert Pitch set to on. Invert Roll set to off.
For “Keyboard Profile” select “x360”.
For “Controller” select “Xinput Controller”.
I would expect a gamepad/joystick to be more viable in the MMO than it is in Battlescape.
In Battlescape it’s important to have twitch control - a mouse is perfect for that.
In an MMO there’d be a lot more time just travelling about, exploring/freighting/patrolling/whatever where a more relaxed interface isn’t going to be a disadvantage.
If people get into combat they can always jump back on the keyboard and mouse.