{"id":1898,"date":"2008-09-24T08:00:50","date_gmt":"2008-09-24T13:00:50","guid":{"rendered":"http:\/\/www.shamusyoung.com\/twentysidedtale\/?p=1898"},"modified":"2008-09-24T08:22:00","modified_gmt":"2008-09-24T13:22:00","slug":"the-mysterious-keypad","status":"publish","type":"post","link":"https:\/\/www.shamusyoung.com\/twentysidedtale\/?p=1898","title":{"rendered":"The Mysterious Numpad"},"content":{"rendered":"<p>Back in the 90&#8217;s, you could use the numpad for playing FPS games.   I started using the numpad for gaming when <a href=\"http:\/\/en.wikipedia.org\/wiki\/Descent_(computer_game)\">Descent<\/a> came out.  The introduction of full 3-axis, 3-dimensional movement abruptly escalated the number of keys I needed under my hand.  The numpad felt like a natural choice, because the keys are all lined up, so I didn&#8217;t have to hold my hand sideways.  There is a nice edge on either side, so I wouldn&#8217;t get &#8220;lost&#8221; in the middle of the keyboard and end up pressing the wrong buttons.  Later, the introduction of the infuriating <a href=\"?p=212\">Windows key<\/a> made the choice even more advantageous.  <\/p>\n<p>But lately games are coming out where the numpad is crippled in various idiotic ways. Not because keyboards or interfaces have changed, but because&#8230; I dunno? It&#8217;s too hard?  I&#8217;d think after a full day of writing new 3.0 pixels shaders for differed lighting passes and edge-smoothing techniques for dynamic shadows, they could wrap their heads around the profound challenge of those 17 buttons on the right side of the keyboard. In the interest of reducing the number of ways my games annoy me, here is a helpful guide for the game developers out there, who seem to be confused and bewildered by the bizarre contraption known as the numpad.  <\/p>\n<p>I shall impart this secret knowledge, now:<!--more--><\/p>\n<ol>\n<li>The enter key is distinct from the enter key on the main part of the keyboard.  It&#8217;s right under my thumb, and I use it to jump.  I don&#8217;t ever want to talk to other players, but if I did, I could reach over and press the main enter key.  Let me assign the numpad enter like all the other buttons.  &#8220;Reserving&#8221; buttons at all is a bad idea, and reserving buttons which have duplicates elsewhere is irritating.  I know what I&#8217;m doing. Cut it out.\n<\/li>\n<li>The keypad is distinct from the six-key box to the left of it.  Numpad 9 is different from PageUp.  Numpad 3 is different from PageDown.  There is no reason to treat these two buttons as the same input.  They&#8217;re not.  I&#8217;ve written keyboard interfaces before, and I know that the way you&#8217;re doing it isn&#8217;t any easier than doing it right.\n<\/li>\n<li>That button in the middle, with the &#8220;5&#8221; on it?  That&#8217;s Numpad 5.  Some games call it &#8220;Unknown 0C&#8221;.  Some games call it &#8220;&#8221; &#8211; a blank string, which is confusing because it looks like the action is unassigned.  Some games simply don&#8217;t allow the user to map the key at all.\n<\/li>\n<li>While the numpad keys should not be confused with similar keys elsewhere on the keyboard, they ideally should work the same regardless of the numpad state.  I know Windows doesn&#8217;t make this easy on you. Windows engages in all sorts of crazy shenanigans when the user is in number-typing mode (don&#8217;t <em>even<\/em> get me started) but a properly written keyboard handler will route around the windows nonsense and deal with the raw inputs.\n<p>In any case, if I press numlock for some reason, the software should not suddenly act like I&#8217;m pressing the number buttons on the other side of the keyboard.  Again, doing it right isn&#8217;t going to delay your game any more than it already is.  Throw an extra twenty minutes at the problem and do it right.\n<\/li>\n<\/ol>\n<p>You&#8217;re welcome.  <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Back in the 90&#8217;s, you could use the numpad for playing FPS games. I started using the numpad for gaming when Descent came out. The introduction of full 3-axis, 3-dimensional movement abruptly escalated the number of keys I needed under my hand. The numpad felt like a natural choice, because the keys are all lined [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[120],"tags":[],"class_list":["post-1898","post","type-post","status-publish","format-standard","hentry","category-videogames"],"_links":{"self":[{"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=\/wp\/v2\/posts\/1898","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1898"}],"version-history":[{"count":0,"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=\/wp\/v2\/posts\/1898\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1898"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1898"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.shamusyoung.com\/twentysidedtale\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1898"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}