I think some variant of this has been discussed before but if I recall it turned into a debate about the lack of being able to customize the keyboard controls in Pico-8.
Please don't debate that here...go find that thread :)
I'm interested in hearing thoughts on whether you think it's a better "standard" to label controls in your game as the letter - like Z, X - or to label them as the special characters (X),(O).
While I personally prefer the aesthetics of the icons, I do know it is difficult to know which button is which on your gamepad when doing that. I used the icons on the game I'm making now and when had people play, confusion followed, so I changed it to letters.
Plus, after some very limited polling on Twitter, most play Pico-8 games with their keyboard...so that tells me that labeling controls with keyboard letters is more helpful across the board. Thought being if you want to use a gamepad you'll a) figure it out, or b) can map things accordingly. Gamepad=Power user, of sorts.
Hmmm...I might have just answered my own question...helps to say it out loud, I guess. But I'd still be interested in hearing thoughts/experiences.
If the game is being published here on the forums, I would much rather see (X) and (O) being used.
Partially because it stays in the spirit of things, but mostly because this forum acts as Pico-8's "app store", so it should be equally useful for people playing on hardware, or with joysticks, or whatever.
(This is also why I get irritated by games that require impossible-on-hardware button combinations, like left and right at the same time.)
If you're publishing on Itch or wherever, using the key-bindings would probably make more sense. Because Itch users are not Pico-8 users, they're just people who want a game.
there's no real solution right now imho. the glyphs are nice and all, but when they could make sense they are reversed (on playstation controllers).
outside of the bbs, O&X make no sense at all, but please don't use Z, it's not where you think it is on non-qwerty.
I went for X & C, and put this on the game pages:
I think that Z&X is the best labelling solution. Not 100% universal but at least it is very straightforward for a huge number of users.
I personally can't help but be annoyed every time a cart displays controls as X&0 glyphs ... and I've only been using Pico8 for a few weeks. Even though the idea makes sense on paper, in practice I find it to be needlessly confusing :/
Another issue with X&0 is the fact that their relative positioning is never explicitly stated in the pico8 environment itself. Whereas Z&X or X&C are explicit.
Hehe well, I've been careful to not say "majority", because I have no idea of the numbers :D
Do that mean that pico8 uses "the bottom-left letter key" as opposed to Z when using a non-qwerty keyboard ? Or is it using Z, but shifted to the location or W ?
yep, desktop pico-8 uses the bottom-left key, labelled "z" on qwerty, 'w' on azerty (french) and 'y' on qwertz (german)
on the bbs, it uses the 'z' labelled key, shifted to the location of the qwerty-w on azerty and to the qwerty-y on qwertz.
x and c are on the same place on each three keyboard.
Well, based on all the exceptions listed above ... it seems like the best is simply for everyone to use what they personally like the most, rather than attempting to find something universal :)
This somehow reminds me of a time when I rewired a Gamecube controller to invert the green and red buttons ... because the button mapping of a Megaman game didn't quite make sense :D
It really baffles me that this is even a question. Unless I'm mistaken, the entire reason zep added the glyphs was so that we would have a way to display button prompts that was non-keyboard centric. If no one uses the glyphs, then why are they even there? PICO-8 itself purports to be a system with the following controls:
"D-pad + 2 buttons"
PICO-8 as a "fantasy console" does not have a keyboard. It has a fantasy controller, apparently. I'm just trying to take seriously what the console purports of itself, instead of imposing my own ideas onto it. Apparently this fantasy controller has O and X buttons. In fact, you can literally see an image of the controller with those two buttons when you use the KEYCONFIG utility.
I buy into the fantasy. For me, that is part of why I like PICO-8.
It actually feels disrespectful to me when people do not use the glyphs. If I'm using a platform, I try to use the native language of the platform. I have to come to it. It should not have to accommodate itself to me.
This is a usability question at its core.
I'm not overly concerned with the "spirit" of Pico-8 things or which keyboard letters are used (see my ask in first post...take that debate elsewhere).
I want people to be able to use my games without much effort...and I think keyboard letters is probably the way to go. There are just less questions as a result.
I've been in too many situations where I'm showing a game, asking people to play, and the first question is "what key is (O)" when they see the icon.
But don't get me started on the PocketCHIP. It's a mess in way too many ways, both for controls and otherwise
As I said, I like the icon better too since it abstracts out specifics, but without any sort of anchor as to what keys/buttons those correlate to, they're not much help.
Plus, after polling people, most play Pico-8 using the client (not web) and also use the keyboard. So if that's how people are playing, that's how I want to be labeling.
> I'm not overly concerned with the "spirit" of Pico-8 things
:( how sad
That said, I get what you are saying about approachability and usability for people who don't know anything about PICO-8.
I think a better solution would be for the PICO-8 web player border to have a "help" button that would show you what the controls are, and which keyboard keys correspond to which glyphs. It's a solvable problem. But don't compromise the artistic integrity of the platform just for people who can't be bothered to read the manual.
The platform itself can/should provide documentation; then it would not need to be the responsibility of individual carts to provide an explanation of the controls.
EDIT: sorry if I'm being grumpy, morningtoast. you are a great asset to the community and I like your collaborative attitude :) It's just that this is an issue I have thought about a lot and I get really emotional about it for some reason xoxo
No, you're good...I respect your passion, for sure. :)
To me, Pico-8 is a "console" in that there is a set of rules that must be followed. I love the "spirit" of Pico-8 in that respect but that's something that is placed on us, the developers, and shouldn't extend to the players.
Real consoles have the advantage of hardware that give people context in which they're playing. Sure, Super Mario didn't have any in-game instructions, but in your hand was a controller with A and B...only two options.
Given Pico-8 can be played with keyboards or gamepads, the possible configurations is just too many to account for. You have to be explicit in that case, you just do. "Press (O)" doesn't mean much when you look down and see 104 keys staring back at you.
Being familiar with Pico-8 shouldn't be a requirement to play a game...and thankfully it isn't. And given the webability of the games, I'm making games for anyone that wants to play, not just Pico-8 owners.
Maybe @zep could add a standard in-executable overlay similar to the pause menu that shows the keyboard mapping?
It could pop up completely without the game's knowledge when the user presses "h". Note: "?" is an option, but it's typed with the shift key, which is normally mapped to a pico-8 button. Another option is to put it in the pause menu.
It'd just be a static screen with the keyboard legend, goes away when you press any button. The game stalls while it's up and continues on as if no time had passed when it's back down.
If it's done in the same manner as the pause menu, that means it's portable across all platforms/exports, too. The ones that need it, anyway.
Recently had a game jam entry, and we chose to stick with 'the spirit of pico8'™ even though it wasn't a pico exclusive base. We compromised and put a rather large keymapping on the splash screen and note on the itch page. People STILL left comment about not understanding the controls. I'm still not sure where I land on the issue, if I did it again I would probably do it the same way, it's not our fault users didn't read the huge display, but it IS definitely a bit of a hurdle for non pico users.
@Felice - Good idea...it'd be something...
I'd love to see some sort of flag that does some detection so my game knows if it's being played in-browser or through the client.
Doesn't exactly solve the problem, but I'd be more comfortable showing icons to the actual Pico-8 client than a web browser. At least I'd have some confidence that Pico-8 owners would understand and have their keys/gamepad already mapped.
@Felice ...or just have "keyconfig" in the pause menu, and also bind the pause menu to F1.
@morningtoast: a proper flag would be great indeed. you can do that to some extent by setting a flag through gpio, so you'll know you're in your own html export.
@ultrabrite: Yeah, there's an idea.
Edit: Maybe not. I never used it before and, by intuition, tried to cursor down the list, effectively setting every entry to "DOWN". It doesn't work the way key configs work in modern games, where you move to the thing you want to change and then press a button to activate the field and pick a new input. I wonder how many people have done that and not noticed you can run it again and hit DEL instead to reset everything. It's not a good UI and I'm glad it's not in the pause menu. :/
I really think the answer is different for the forums versus for publishing elsewhere.
I know that's not the answer people want to hear, but ...
|It actually feels disrespectful to me when people do not use the glyphs. If I'm using a platform, I try to use the native language of the platform. I have to come to it. It should not have to accommodate itself to me.|
I agree with this. Both for practical reasons and for "fantasy" reasons. But all of that only applies to games that show up on Splore.
When you put your game someplace that isn't Splore, you can't expect people to be prepared (mentally or practically) to play a Pico-8 game. They're playing a browser game, and you have to respect that.
Well to be fair even the native language is not necessarily the best option - even in a native context !
Take the Xbox360 face buttons for instance : ABXY / green red blue yellow. It may make sense for a QTE-based game to refer to them as such, but for anyone with a history of SNES gaming it will be near impossible to react to a prompt showing only the button letter, or the color, or even both. In this case the only way to properly prompt for QTEs is to display a diagram showing all the 4 face buttons, greying out the other 3.
What I mean by this example is that even something as native as using the glyphs in the Splore environment does not ensure a smooth experience for the user, because nowhere is it stated that X or O should be "leftmost" or "rightmost". Even after weeks of using Pico8 I personally still can't remember if the default mapping is X>Z O>X or X>X O>Z ...
The irony is that there was a much easier solution : simply using "0 and 1" as glyphs, and mapping them by default to 0, 1, numpad0 and numpad1 on the keyboard. But of course it's too late for that now :D
To be honest this really doesn't bother me much at all at the end of the day. It's fun to think about and I wish the issue wasn't there but it doesn't really affect how awesome Pico8 is :)
|I'd love to see some sort of flag that does some detection so my game knows if it's being played in-browser or through the client.|
Actually, the glyphs we're talking about are part of the Pico-8 font.
Who says the font glyphs have to be the same on all platforms?
Zep could adjust the exporter so that the (O) glyph renders as (C) when you're playing through the browser.
Nobody would have to write special code in their game. That solution would even be backwards compatible with existing games.
|When you put your game someplace that isn't Splore, you can't expect people to be prepared (mentally or practically) to play a Pico-8 game. They're playing a browser game, and you have to respect that.|
Boom. Thanks @apLundell - you took my rambling and boiled it down.
I'm not making a "Pico-8 game", I'm just making "a game". Yes, it runs in Pico-8 but it runs in the browser, and before too long, we'll probably get exporting so it'll run on PC/Mac as standalones. That right there will open this debate up again when it happens.
Lets be honest, Pico-8 owners are the minority. Most folks will play them in a browser (for now). And for times when people review/blog/promote a game, they link to the forum cart or Itch.io...they don't say, "go buy Pico-8 so you can play this game." They might not even mention Pico-8 because there's no reason to.
What PICO-8 really ought to do is to change the glyphs in the font dynamically, based on where the input actually comes from. If the user is pressing buttons on a controller, use the generic O/X labels (personally I wish it used 0/1, but whatever), if it's coming from a keyboard, change the glyph to look like the source key.
This is what a lot of PC games do and it ends up being pretty intuitive.
And before anyone says, "But it's only a 3x3 area!", here are keycaps for the important part of a US keyboard:
A little creativity was required for some of the unusual keys, and I just noticed I forgot to do capslock. Oh well.
The top row is left off because I can't think of any reasonable situation where someone would map a real keyboard's keys from that row to u/d/l/r/x/o. You might do something weird like that with a custom cabinet, but in that case you wouldn't want the real keycap glyph anyway.
(Also, not happy with the space glyph. Maybe the left-square-bracket-lying-on-its-back style of space representation would look better.)
Anyway, zep, if you want to use those glyphs, feel free.
(x) and (o) are consistent for multiple players, while the letter keys obviously aren't. I'm making a multiplayer pico game so this weighs heavily on my mind.
I like being able to say 'press (x) to join' instead of "press 'c' or 'w' or maybe 'm' to join. Oh if you are using a controller it's the button on the right."
I like the community and shared idioms of pico games, so I prefer to use the glyphs. Maybe a keyboard player will be a bit bewildered at first, but they only have to figure it out once.
@borden - Multiplayer is truly a different case and not one I was even thinking about. I've never made a 2p game or even really tried.
From my armchair, I'd say you're right in using the glyphs. It won't stop people from playing either way.
[Please log in to post a comment]