Options Menu

Ok, so here's a discussion we apparently need to have. I didn't think there still were people who thought like this, but then again, I guess the evidence for it is obvious.

I haven't watched through all the videos yet -- in fact I'm in day13 wherein one question... or rather the answer made me write this.

Casey says that he doesn't think people should be given the option to rebind the keys. It's mind-boggling how game devs still think like this and in turn explains the god-awful options menus of some modern games. No rebindable keys? WHY NOT?!?

You don't HAVE TO rebind the controls just because you CAN. That's a bizarre thought-process. I rarely touch the options menus in games, but if I want to, then WHY WOULD YOU NOT HAVE THEM THERE?

This idea that less options is better seems to really be the trend these days and I just HATE IT. Absolutely hate it. There are so many things I would love to customize in so many programs and I just CAN'T because the developers thought that they knew what was the best for me. It is so arrogant!

It's like the game companies today deciding that you need to play the game in 30fps even if your PC could do 60 or even 144 easily. It's the way they shove those 80 degree FOV's to your face and you're just gonna have to deal with it no matter what sort of migranes it gives to you. It's thinking that everyone is made out of the same mold and uses exactly the same pieces of equipment you do so YOU KNOW BEST how everyone should play your game.

Sure, you CAN do it. If your game costs $60 (which of course isn't true in this case), then it's just a big "FUCK YOU" to the person who just can't play your game because of your arrogance. You think Steam is gonna refund them?

You want to make everything the way you think is best? Sure, make it the best you think it should be out of the gate. But give people the options anyways. You know? Have some sense.

EDIT:
Casey: "I'm holding a gamepad. There's no buttons on the left side of this thing."

A gamepad? You mean Xbox360 controller? Do you actually think all of the controllers are identical to 360 gamepad? I have a dualshock4. It DOES have buttons on the left side of the pad. And that's not even the point. The point is that YOU DON'T KNOW. You don't know all the situations people might run into and how people might want to play the game. Have the options there so that THEY can make the judgment call.

Sure, it's extra work. But it's not THAT MUCH extra work. It's should be pretty high on the priority list.

EDIT2:
What if the person is missing a finger or two?
What if the other hand starts to hurt a lot when someone uses specific buttons a lot?
What if the person had an injury and could play the game just fine if they just could rebind one button?
What if the person played another game where the buttons did something else and they got really used to it and it's really hard trying to learn how to play your game properly with the buttons you decided were good?

I would have HATED the new Need For Speed game if it didn't let you rebind the buttons. Yeah, it actually does that! No, I don't mean the keys for keyboard but the buttons for your gamepad. Ridge Racer Unbounded used other buttons for same mechanics and I played it A TON. Playing NFS would've been a NIGHTMARE if I couldn't rebind the buttons. Luckily the devs had some sense in their heads.

Edited by Ianuarius on
Just a quick reminder: the design of Handmade Hero is not up for modification, so if you want to discuss things like adding an options menu, that's totally fine, but keep in mind that you are discussing it primarily with other folks in the community who might want to mod their source to add it, etc., and not with me, because there's no options menu in Handmade Hero!

- Casey
I have to agree that an in-game options menu or at least a launcher offering basic options is an essential part for PC games. As a player, I am always pleased to see when a game runs at my desktop resolution and has sensible key bindings from the get-go. Nevertheless, sometimes things go wrong. Foreign key layouts the game developer hasn't considered ("Use z and x to dodge left and right! Also, f* you, QWERTZU users!"), weird laptop graphics cards with drivers that crash when trying to run an OpenGL game at the desktop resolution (I guess an in-game menu wouldn't help much there) or speaker configurations where the speech needs to be a bit louder than the background music. There are many things that 20 seconds in a good options menu would fix.

[quote=cmuratori]
Just a quick reminder: the design of Handmade Hero is not up for modification

Fair enough. But in light of the educational goals of Handmade Hero, would you consider eventually doing a stream or two about how you would implement rebindable keys, resolution options, sound volume sliders and so on?

Edited by Benjamin Kloster on
Can't really blame you. I mean, I guess that's pretty much what my response would be, too.

Can't force you to make anything. How's this: maybe (because you're in a position of influence) don't put ridiculous ideas like "rebindable buttons are useless" into people's heads. Many people look up to you. And that sort of attitude, as far as I'm concerned, is TOXIC.

I look up to you, too, and am really thankful for the videos. They're absolutely great! Sometimes you just vocalize ideas that I think are the one thing wrong with game -- and in fact the whole software industry today. So, please! Please. Okay? :)

Edited by Ianuarius on
Worst experience growing up was when a friend would get a new game and we would sit down to play it, only to waste 30 minutes in the settings panel customizing everything.

Glad there are going to be limited options, especially for a tile based game such as this. I don't recall adjusting any nes/snes games to much of a degree.

If you care about the input bind-ablity, create and maintain a patch. That would be more useful to the community than the self-entititled (toxic) attitude you (Lanuarius) are displaying now.

/yawn
EDIT: Now that I think about it, I already explained my position rather well, so this reply was pretty much pointless. Carry on.

Edited by Ianuarius on Reason: pointless reply
Nimbal
Fair enough. But in light of the educational goals of Handmade Hero, would you consider eventually doing a stream or two about how you would implement rebindable keys, resolution options, sound volume sliders and so on?

All of those besides rebindable keys will already be implemented, because we need to support scaling down to lower resolutions when we detect that we are missing our frame rate, and of course our sound mixer will obviously have built-in volumes and so on. So there really isn't anything that will need explication there, it'd just be a straightforward modification of a variable we've already implemented

For rebindable keys, I guess we could show how to implement that eventually, but it's a lot of grimble work, basically. What you have to do is make all platform layer implementations capture all input state, and then you forward all input state to the game layer which then does the mapping that we're doing in the platform layer right now. Then you have to make a menu that allows you to edit that mapping. It's pretty simple, but it is definitely a lot of extra typing.

- Casey
Caseys' first response is pretty much how I thought everyone would already being approaching design differences. In 2015, it's a safe bet, there are going to 100's of HandmadeHero-like RPGs floating around.

Different art's, different camera's, different combinatronics, different options...

100's of ways of icing the same underlying cake.

If you want an options menu, then follow the streams or archives and make one yourself.

Then tell us how many people play your HandmadeHero-like vs Caseys HandmadeHero.
Well it seems I am a bit late to the party but here goes.

I can understand where you're coming from. It seems like, to me, that you're worried that the lack of rebind-able keys in handmade hero will have a negative influence the next generation of game developers in a subtle way. To be honest, though, I think you're kind of blowing things out of proportion in this particular case and projecting a little bit of general frustration about the game industry as a whole onto Handmade Hero.

I think it's pretty safe to say that when it comes to bringing up problems with the gaming industry in its current incarnation you're kind of preaching to the choir in this community. The thing is, I don't know if this is necessarily the best battle to pick. As far as game design goes, I think that Handmade Hero is shaping up to have a relatively simple control scheme (at least when compared to games like Microsoft Flight Simulator for example), and the problems Casey has said he wants to tackle with respect to the controls more have to do with responsiveness to input.

Perhaps a different frame on the problem you bring up is that control schemes for games nowadays are so unnecessarily complex, poorly implemented, or both, that it is just taken for granted that for any game to even be playable the user will have to take their own time to rebind the controls. I mean, if you think about it from this perspective, rebind-able controls can interpreted as an admission by the developer that they have failed to deliver a completed product to their end-user. I am not saying that is what it is, but just how it could be interpreted.

I would think that in this case, your fears are unfounded because Handmade Hero aims to teach people how to code good control schemes in the first place, thereby precluding the situation that would necessitate the implementation of rebind-able controls in the first place. In addition, given that the implementation of good and responsive controls are the exception and not the rule, I think it's safe to assume that time-on-stream is much better spent teaching that.

Something to consider in this vein is that Casey only has one hour per day to stream. If rebind-able controls include a bunch of busy work and pesky bug-fixing than that could realistically amount to literally weeks of doing nothing but watching busy-work with very limited payoff. It just doesn't make much sense from a teaching perspective when there are so many other things to cover that have more to do with getting the game up and running.

I don't know it seems the thread has already come to a conclusion of sorts, but I just thought I'd put forward another perspective.
StarchyPancakes
Perhaps a different frame on the problem you bring up is that control schemes for games nowadays are so unnecessarily complex, poorly implemented, or both, that it is just taken for granted that for any game to even be playable the user will have to take their own time to rebind the controls.

I don't think control schemes for games nowdays are poorly implemented or complex. Well, yes, I'd prefer if the devs didn't bind multiple actions to keys for games that are on PC, but I can manage.


StarchyPancakes
I mean, if you think about it from this perspective, rebind-able controls can interpreted as an admission by the developer that they have failed to deliver a completed product to their end-user. I am not saying that is what it is, but just how it could be interpreted.

To me, that sounds INSANE. Is THAT what all the devs nowdays are afraid of? Is that why I can't get rid of some useless buttons in my Spotify or filter my search results? Because of the dev insecurities? If that's the case, then more than anything I just feel sorry for the devs. It must be tough to feel so unappreciated.


StarchyPancakes
I would think that in this case, your fears are unfounded because Handmade Hero aims to teach people how to code good control schemes in the first place, thereby precluding the situation that would necessitate the implementation of rebind-able controls in the first place.

You are (for whatever reason) assuming that my fear is that the game will have a poor control scheme.

????

I don't know where you got that idea. I never, even in passing, mentioned that this was my fear. My fear is that the game won't have options for the people who for whatever reason happen to need them. I did write this, didn't I? It seems like a lot of people misunderstood me in this. I don't know what it is. Maybe I just suck in explaining things and communicating my thoughts! :D

Options are good.

You don't have to touch them.

That's why they're called "OPTIONS".

Do the best job you can off the gate. (I already wrote this.) Make the game so that most everyone can play it by just turning it on. (Already wrote this, too.) Just have the options there for the people who can't. Because you CAN'T think of everything. Nobody can. It's IMPOSSIBLE. Please, do try. But don't think that you're somehow special and know what's best for everyone everywhere in the world.

Or here's an idea! Maybe tell people on the Steam page that the game DOES NOT have rebindable controls. It's a horrible way to do things, but at least you're letting people know how things are before they spend money (that they'll never be able to get back) on the game.


StarchyPancakes
Something to consider in this vein is that Casey only has one hour per day to stream. If rebind-able controls include a bunch of busy work and pesky bug-fixing than that could realistically amount to literally weeks of doing nothing but watching busy-work with very limited payoff. It just doesn't make much sense from a teaching perspective when there are so many other things to cover that have more to do with getting the game up and running.

Absolutely. And I can appreciate that. But in that case (and he often tells other people to differentiate between this sort of things himself) he should tell people that it takes too much time to implement. NOT that rebindable buttons are useless. (By the way, I already wrote this, too.)


Tribuadore
100's of ways of icing the same underlying cake.

Ok, this is my point exactly. Options are not "icing". They're ESSENTIAL. I'd rather game devs spent a little less time in making cut scenes and a little more in making things that might for some people decide if they can even play the game or not.

Or maybe just cross your fingers that someone will make a fan patch for that Dark Souls you bought.

Oh, that reminds me. In case it's not obvious (for whatever reason I think this is obvious, but you know... communication) I'm not afraid of just Handmade Hero not having options, but rather Casey telling everyone that options are useless and then the next generation of game devs growing up thinking: "Yes, gamers ARE stupid. We need to tell them how to play games rather than letting them decide what's best for their well-being."

Make the game the best you can!

Make it so that most people don't HAVE TO fiddle with the options AT ALL.

That's good! I'm all for that!

Just have the options there for the people who actually NEED them.

Am I making any sense yet? :D This feels so hard. It's like nobody is getting at all what I'm saying.

Edited by Ianuarius on
[quote=Tribuadore]
Then tell us how many people play your HandmadeHero-like vs Caseys HandmadeHero.


A game's popularity is often determined by marketing, not by feature set.

[quote=StarchyPancakes]
I would think that in this case, your fears are unfounded because Handmade Hero aims to teach people how to code good control schemes in the first place, thereby precluding the situation that would necessitate the implementation of rebind-able controls in the first place.

In my mind, rebindable keys are absolutely not about making the control scheme usable in the first place. Every game should come with a default configuration that allows the player to jump straight into the game. But sometimes, players prefer different control schemes for one reason or the other.

For example, when I was playing a popular MMORPG, I preferred to have my movement keys be RDFG instead of the more standard WASD, to have more keys easily reachable. Without rebindable keys, I couldn't have done that. Furthermore, I liked to use that control scheme in other games, too, just because my fingers automatically fell into this position. I haven't played that MMORPG for a long time now and have since gotten used to using WASD again, mainly because, yes, it's annoying to change every game's keybindings before starting to play (go ahead, quote me out of context, I dare you!).

My point is this: implementing the perfect, one-size-fits-all control scheme is a noble goal, but I don't think it's attainable. At best, you'll have controls that fit 95%, maybe 99%+ of players. If you want to ignore the rest, fair enough. Otherwise, take a couple of weeks to add rebindable keys.
On rebindable keys as related to handmade hero:

One thing Casey mentioned at one point, I think, was the idea of a config file that people could change outside the game. I think this is a nice compromise because we can keep the design intent of having no options menu, but also allow rebinding keys for accessibility/inclusion concerns, etc.

Anyway, it's a long dev process, plenty of time to see how things develop.

-

On rebindable keys / menus in general:

My take on this is that having rebindable keys comes down to the needs / design of the individual game. A game like counter-strike wouldn't work without rebindable keys, there's no avoiding it (and this is probably true for most modern games: it's just the way they are designed these days). But a game like mario, or the original spelunky, or (I dunno) journey (never actually played it, just came to mind), for games like these, I'd argue rebindable keys would not add anything and can only detract from the cohesiveness and immersion of the experience. I won't claim that's an objective truth, it's just my perspective on design.

We actually have a great example of this because spelunky was remade *with* an options menu. Now, I do like having some of those options, I'll admit that. But launching the game up to that menu is a totally different experience to booting up the old spelunky. (And, at least for me, having that menu is very grating.)

I think what it comes down to is immersion. You don't want to hurt that illusion that the game could be coming to you from outside of time, as though you found it, like jumanji, washed up on the beach somewhere, or at the bottom of a river, or abandoned in a graveyard. You want your game to be timeless, as though it were self-contained.. I dunno, I'm not explaining it well..

It's not a perfect analogy, but it's sort of like the way a bad pop song or bad cgi can date a film. It reminds you this was a product of its time, breaking the suspension of disbelief.

For me, at least, that's important.

-

However, there's another thing to keep in mind. And I think this is maybe what Ianuarius is getting at (correct me if I'm wrong!), and that's the idea of accessibility / inclusion. The idea of designing for that fringe gamer (the canonical example is colorblindness). It's an important aspect to consider, but this post is getting long so I'll leave that topic for another day.

EDIT: On re-reading this I realize this post is a mess. I highlighted the main point.

Edited by Nines Baobaberson on Reason: added emphasis
Ianuarius

Casey says that he doesn't think people should be given the option to rebind the keys. It's mind-boggling how game devs still think like this and in turn explains the god-awful options menus of some modern games. No rebindable keys? WHY NOT?!?


I agree 100% with this. I wouldn't even consider playing a game that don't have this feature. And I will not recommend it to others, for playing it, until it is in there. This is a *must have* feature, of a real game, for most of the reasons you have mentioned.

I have just preordered the game, but that was for having access to the source.

Without rebindable keys I'm not even going to consider playing it. And although it would be possible to mod it.... For me, modding a C++ source it completely out of the question. Gaaaaadh no! Mommy....?!!! ;-)

I also agree it was really sad that he recommended this to beginners. You can almost not make a worse decision. However, we all have some opinions we should keep to ourself :) But this one is imo too important.

That said, I am pretty much in agreement with most of the other things Casey teaches, and I already learned a lot, and I LOVE the series.

Edited by Livet Ersomen Strøm on
Remember. Playing a game is serious buisness! Maybe even more so than writing them. I know people who will not play family members, due to fear of destroying family peace. That's how important it is for many people.
This thread bothers me because I feel like it is extremely one-sided. That's fine, but I just thought I'd mention it in case people weren't aware of it, and explain the various counterpoints that are not being raised.

From the perspective of these posts, you can only make your game better with rebindable keys, and any developer who doesn't include an options menu is just stupid. But that is very myopic. As a player who never rebinds their keys and hates menus, I am almost never catered to, because most games do cater to the small percentage of users who want a screen full of options and rebindable keys. As a result, my game experience is always worse because the game, which could have been just a seamless experience, now has a lot of the trappings of an application. It feels bad and I dislike it.

The goal of a creative work is not to cast the widest possible net. That is the goal of a strictly commercial work, and that's fine, but that's not at all what I primarily think about when I get up in the morning, and it's certainly not how I would classify Handmade Hero. Handmade Hero is a personal project, and I don't want it to have a lot of things in it which I personally dislike.

If not having an options menu means that there's 10% of the player base who won't play the game because it does not have adjustable thing X (rebindable keys, windowed mode, whatever), that is totally fine, and I am not only OK with not having those people play the game, but I'm also not mad at them because if rebindable keys are important to those players, then they should avoid purchasing and playing games that do not have that. But apparently, assuming this thread is representative, those players are mad at me because unlike the courtesy I extend to them to make decisions about what they do and don't want in a game, they are unwilling to extend me the same.

As I said on the stream, for people who really want options, I would generally not be averse to having an options file, or command line switches, or something else "outside the game" that allows you to configure it. In my opinion, this is how it should always have been done, and these should have been standarized at (at least) the OS level, so people had a standard utility that could edit the settings of all games. This would have also allowed for standardized "layouts", so that a game could just say "I'm a Robotron game" or whatever, and then the user's Robotron layout would automatically be applied. Sadly, with people like Microsoft at the helm, you kind of know this is never going to happen, or if it did, you'll wish it hadn't :) But I still think it's the right solution in the large. It's also worth noting that Steam is sort-of doing this now, with their Steam controller, where users can post their configurations for games and share them with each other. That's a good thing, and I hope it catches on - I don't see why they couldn't implement this for keyboards as well!

On the code side of things, given that there is currently no such standard, I feel like there is some magical thinking in this thread about how the cost to the game of implementing rebindable keys is somehow zero. This is odd, because obviously people do know there is a cost - the phrase "otherwise, take a couple of weeks to add rebindable keys" was even used in this thread. Do you know how much stuff can be added to a game in a couple of weeks? Especially on a project where there are one or two programmers, which is most indie projects, adding rebindable keys, while easy to do, obviously takes a bunch of time and testing on all platforms. Did you properly capture PrintScreen on Windows? How about the Windows key? Wait, what if some players want those keys to work? What if others want to bind them? There might be a large amount of work, depending on the platform, in actually getting all bindings to work properly, because it may involve intricate OS passthrough code that depends on the key. It'd be nice if it didn't, but the reality of most OSes is that they don't make it easy to be fully compliant with all operating system key behavior while still allowing the user the full choice of keys on the keyboard as rebind targets.

For the development cost of adding rebindable keys, no matter how bad your implementation, you lose something in the game. The devs could have implemented another boss monster, for example, or improved the frame rate in that part that was laggy, or whatever else. No matter how many hours were spent on rebindable keys, on a small-team game, all the other players of the game lost something because you got rebindable keys. Programming time never comes out of thin air. You were always trading something else that could have been done instead of rebindable keys. So it is pure fallacy to think that adding rebindable keys only helps your game. It definitely hurts symmetrically, and you have to prioritize whether you think that the win from having rebindable keys is more important than whatever else you would have spent that time doing.

Furthermore, I also disagree with the statement that rebindable keys somehow drastically change the accessibility of a game. The posters citing this as a motivation for rebindable keys seemed to think I wasn't aware of accessibility concerns, but I actually know quite a bit about designing for accessibility.

While rebindable keys may help slightly with accessibility for very simplistic games, it is not the case for most games because they have large amounts of buttons that must be accessed (nearly) simultaneously, as is the case with Handmade Hero. It is simply not possible to play them with only one hand, for example, and thinking that rebindable keys will help with this problem is misguided. People using special-purpose controllers (ie., foot controllers, head controllers, etc.) already have those mapped per application using the drivers for the devices themselves, so there's no need for your game to additionally support another level of rebinding.

If you really care about accessibility, you have to actually provide another game mode that requires only a subset of the inputs normally in the game. This is a difficult thing to do, because it involves rethinking the experience of the game so that you can still deliver a quality, challenging experience to players using a less expressive control scheme. If you actually talk to players who have to play games with single-switch or dual-switch controls, they will tell you that they really do want games that are full difficulty, but which can be played with only two inputs, not some kind of complex remapping scheme where they can't really play the game right so that they have to set it to "super easy can't die" mode to compensate.

I would definitely not be averse to doing accessibility modes in Handmade Hero after the first version ships. I already thought about this a little bit because of the nature of the game (the fact that the hero is limbless). Turning Handmade Hero into a four-button game, and then perhaps into a one-button game (the most accessible), would actually be pretty interesting and could be a lot of fun. So I'm very open to that as something to do, especially since I knew some folks who did great one-button and two-button games for gamers who were unable to use their hands at all. Some of the games they made were pretty darn awesome (Strange Attractors 2 was one I particularly enjoyed).

OK, I think that's everything. I'm going to stop looking at this thread now :) Carry on!

- Casey