Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(2 edits) (+1)

That's a very good question, and also a crucial one. But, interestingly enough, my answer is... no. And my reason is, generic controllers don't have the same button and stick definitions as an Xbox controller. If I start Cattle Crisis with a generic controller, I'm going to have to go through a trial-and-error process, to figure out which analog sticks, d-pads, and buttons have moves automatically imposed on them. This is a treacherous thing to do, because in some games, you have to also unlock moves. So, even if a move doesn't feel like it was successfully imposed, it may actually be so. If a move isn't imposed, I'll end up having to go into a profiler program (like JoyToKey) and having to manually add the move.

In the amount of time it took to play trial-and-error (followed by manual button entry) I could have just taken the game's keyboard defaults, plugged them all into JoyToKey, and started Cattle Crisis for the first time, without struggle. Being able to create your own controller layout is also one of the advantages that PCs have over consoles.

This year, I started an entire site (conflexgames.com) which is dedicated just to PC games that are guaranteed to cooperate with JoyToKey layouts, if you take a game's keyboard defaults, and plug them into that program. Finding a game's defaults is really easy - just scan the barcode with your phone. Conflex Games is okay with controller imposition, if it's specific to Xbox and PS controllers.

Thank you for the detailed explanation, but I still don't see how only supporting specifically xbox and PS controllers could be a better alternative. Wouldn't that force players with other types of controllers to download JoyToKey or AHK or other hacky solutions to play the game? How is that easier?

What about games that let you rebind controller keys via the options menu? Isn't that the best of both worlds? No 3-rd party software required.

(+1)

There's no intrinsic problem with rebinding features, but, in actual practice, they do a couple of things that bother me.
For one, not every game engine can include rebinding. Point-and-click games don't have rebinders, yet some of them can work with JoyToKey (as long as the mouse movement isn't too demanding). If you have a library of games that all rely on the same profiler, it creates a more uniform experience.

Some rebinding menus are custom-designed around the game's aesthetic, which means extra labor for the artist.
There are ways to avoid that labor, since certain Unity games include a common input menu (you'll see it before the game starts) but developers find ways to make them needlessly convoluted. Go Kart Go! Ultra! (for example) is a really good-looking and well-programmed game. But, its Unity input menu contained way too many slots that read "x-axis" and "y-axis" and trying to figure out which slots are valuable (and which ones weren't) was a dreadful experience for me.

Rebinding menus tend to be less flexible than JoyToKey - there are quite a few of them, where you can't put an Action or Jump move on a D-pad. Developers also like to include both rebinders and generic impositions, which means that a controller will start working, even before I've gotten the chance to consent to a profile, and that has a way of making me feel like I don't have control (no pun intended).

It's true that JoyToKey is not a good-looking tool. It reminds me more of MS Excel than (say) video games, and that is a setback. However, some of the unpleasant characteristics of JoyToKey could disappear in a few years. The version of JoyToKey that's on conflexgames.com was specifically re-structured, to be easy to view in a living room.

I see. I'll try to avoid those pitfalls when designing the rebind menus in my own games in the future. Thank you for sharing your unique viewpoint.

Out of curiosity, doesn't Steam offer something similar with the Steam Controller Input menu thing? The one that lets you configure and rebind your controller on a per-game basis, and even emulate KB and mouse with it. I think you can add non-steam games there and still use it if I'm not mistaken. How does it compare to JoyToKey? Note that I haven't used either of those.

In Steam, it is possible to create profiles for non Xbox and PS controllers, but in my experience, the process is needlessly coercive and confusing. Like, if I plug in an N64-to-USB controller, and go into Steam, a menu navigation layout will automatically be imposed on the controller. Supposedly, this is meant to be a nice thing - after all, if you have menu navigation automatically imposed, that means you don't have to use a mouse and keyboard, and it is true that I don't like using a keyboard in a living room. The problem is, you have to play trial-and-error to figure out what layout Steam imposed, and it also means you have to create a layout for the controller, while some other layout is already active, and to me, that's incredibly confusing.

If you do find Steam's custom setup process easier than JoyToKey's, I think that anecdote is reasonable, although I believe that Steam has gotten gamers used to thinking that keyboards, mice, and ordinary Xbox controllers are the only peripherals that PC gaming really needs, which is a conclusion I resent.

For the last few years, I've been working on a Steam alternative, which uses JoyToKey as its foundation, and that's one of the reasons I'm chatting with a lot of developers right now, trying to see how they react to my emphasis on JoyToKey-friendliness.

I see. That does sound pretty confusing, yeah. Especially if you try using non-"standard" controllers like the N64 one. I've always been a KB&M enthusiast myself, so I don't have a lot of experience with controllers, and I own only generic x-box-like ones, which realistically cover my needs of occasional gaming on the TV.

Your project sounds really cool, and while it's probably a godsent for people who want to be in full control of controller bindings, unfortunately I think it's is too niche to reach a broader audience. For most people, an xbox controller IS all they need for gaming.

That being said, I think it's still important for projects like yours to exist for those who need it, because more accessibility is always a great thing, and games should be as accessible to as many people as possible. That's why I try to give as many options and key rebind settings as possible. In my current project I have 4 input methods that can be used independently and are completely sufficient to play the game and access all functions - those are Mouse, Keyboard, Controller and Touch.

And having gone to all the trouble to implement all these, I can see why some developers don't want to bother with input remapping and even supporting controllers/touch input - it's a lot of work for something that not a lot of people use (touch gestures in particular are a nightmare). For these games I'm glad tools like JoyToKey, AHK, XBMC and Steam input exist, even if I'm not using them, they're making someone else's gaming experience that much better and that's awesome.