Just wondering is WASD more or less universal or do different countries have different keys?
For my game I’m using WSAD also Q and E. Would most countries have the keys in the same place?
I’m also supporting arrow keys but don’t know what I could then replace Q and E with. Perhaps left and right shift keys. (Although on some versions of Windows if you press shift too much it opens some onscreen keyboard or something).
I know hungarian swaps Y and Z. I imagine theres other minor changes to QWERTY across the world, but nothing that substantial I think. Q and E should be fine
WSAD and cursor keys are usually going to be the defaults in most games for keyboard controls, yes. You will usually find both are set (most games have 2 choices for every key).
Beyond this, it should be completely re-definable and also completely independent of any joypad controls. A typical blockbuster game then has at least 3 ways you can control the character without even using the menus.
If you’re a bit lazy, just settle for cursor keys if your audience is casual or WSAD if your audience seems a bit more knowledgeable.
I’m oldschool from the Descent days (first game with free look) and uses invert mouse, back in those days you used the arrow keys which was complete shit so I started to use YGHJ instead. Bottom line let the user invert mouse and change keys.
Being lazy I could just use the Unity startup dialog to let the user map keys. But this is not really an option if I want to support Steam Big Picture Mode or just make it so you don’t have to use a mouse. So I’ve disabled this.
My biggest markets are English, Japanese, Chinese, German and Swedish. (Basically what I like to call the “geeky” countries. Do Spanish speaking people not play video games? Maybe the weather is too good.)
I’m not sure if Japanese and Chinese use QWERTY keyboards? I would presume they would if they were playing western games. And Japanese or Chinese people here?
Mostly I’m worried about “Q” since maybe not all countries support it. They might write “kween” or “kwestion” instead.
People using AZERTY will certainly let you know. It’s not really an option just to use WSAD with no way of changing it. Even if you use the locale to assign default keys based on that, there will be a lot of people yelling at you if you don’t provide remapping, assuming you have any users. The Unity startup dialog is a…highly suboptimal way of handing it. Do it in-game, like most other games do; it’s expected.
Always, always disable the unity config popup. Its a dead giveaway the game is crap o ware thanks to Unitys bad reputation among clueless gamers. Instead have a custom config inside the game.
Japanese PCs use QWERTY keyboards nowadays, with one or two extra keys that help switch back and forth between roman characters and japanese characters. BUT, exceedingly few Japanese people use PCs for gaming. Pretty much anyone who plays any game does so on their phone, a Switch/DS, or a TV console. The few hardcore PC gamers will definitely be used to going through some hoops to get the inputs customized.
You can always insert a way for the player to change the default key controls. I don’t know how hard that would be to make it but I’m sure that there is an asset for it. You can have anything in the asset store xD.
Really? I’ve seen a lot of documentaries about those big gaming cafés where they play StarCraft and so on. But come to think of it that was mainly China and South Korea.
Well, I mean I’m supporting arrow keys and Xbox Controller. WASD was just a bonus thing. But I probably should make it customisable unless I wan’t to annoy the French (which is tempting. ).
I’m putting in my vote for custom controls. It’s one of my pet peeves honestly, so much that on the Gamemaker Marketplace I have an asset similar to CInput/Rewired/InControl that does all that custom control stuff.
I’ve been using Sophie Houlden’s Sinput for my current project and I’ve found it to be pretty good if you’re both cash strapped and not really wanting to deal with the mess that is writing your own input wrapper with control mapping support.
I personally love using WASD. I even have a Corsair Strafe keyboard (with Cherry brown switches) on my gaming rig with the raised buttons for WASD. But WASD is far from universal. I personally know a lot of people who have made up completely unique keyboard combinations for playing FPS style games that I use WASD for. I am constantly surprised by the huge amount of creativity end users have when coming up with control schemes.
All modern games are expected to let users completely customize every aspect of their control scheme. To some users, this aspect of the game is more important than nearly any other feature. They want to create a unique custom control scheme. As such, I strongly recommend every Unity game dev considers using something like Rewired.
The control customization needs extend far beyond just the keyboard. End users also want to use every joystick they own, including a bunch of long ago end of lifed ones. Anything short of a Rewired style input solution is going to leave some end users wanting.
Sweet. I wrote my own input wrapper a little over a year ago but it’s in need of improvements and this will make for good reference material (assuming I don’t just outright use it).
And don’t ignore left-handers, who often use IJKL.
Also not good enough. Plenty of people using PS4 and various USB controllers from Logitech and so on. Really, game development isn’t the place for being lazy; best to do it right if you’re going to do it. (At least assets exist so you don’t have to do everything yourself, so you can at least indulge in that type of “laziness”.)
That is true. However, I think it depends on your market. Some people like a lot of buttons and dials to tune. Others just want to be told what to use.
I know for myself, when a game has a settings option in the menu, I can spend ages trying out the various options, but it probably makes me enjoy the game less as I’m constantly thinking about if I’ve set the options right.
(Also, I didn’t even know about USB PS4 controllers!)
This is a valid point…but that doesn’t mean you make your controls be stuck. It means you have a good set of defaults. ReWired specifically lets you set defaults for different control types for example for this reason. WASD is a good starting point for keyboard defaults.
That being said, I wouldn’t be surprised if people who insist on using keyboards for games that happen to have these keyboards with different keys are already quite used to customizing controls. I’m not sure how worth the effort it would be to have defaults for all the different regional keyboard layouts, especially if you are properly allowing them to customize things anyway. But, you would still be best off having at the least one viable default scheme that is a good starting point. Beta testers can help greatly with this as long as you take their advice on a sort of “majority” theme and not try to please any individual one.