Comment by lambda

16 hours ago

Tried out the simulator and was surprised to find that the movement keys are ZQSD; then realized that's the equivalent of WASD on an AZERTY keyboard. Checked and sure enough, Pollen Robotics is a French company.

They may want to at least add a preference for keyboard layout, pretty sure that QWERTY and QWERTZ are much more common worldwide than AZERTY.

As a French guy who grew up playing CS 1.6 on an AZERTY keyboard, I have a feeling that the people who made this website are either a generation above or below Millenials.

Because it doesn't make sense: you don't make a website in English, with prices in USD... while expecting users to have an AZERTY keyboard.

We even had a meme and tshirts about it: https://wiki.nofrag.com/Jte_niaue_q_lq_Kqlqsh

  • I'm a millenial and can say you can absolutely make a site with i18n + currency conversion without knowing what keyboards people use. Especially Americans, who are much less familiar with "other markets", because companies can stay within US customers for so long.

When I started out playing Quake 1 many moons ago, when I complained about how to reach keybindings as I was using the arrow keys, a veteran player on the server told me patiently to use ESDF like a normal person. So I did, and learned, and it stuck with me. It wasn't until years later I realized that was more a rarity and people usually use WASD. I kept ESDF because I was used to it, and because it's nice have those two extra left keys as additional bindings.

All that's to say, if they'd used ESDF this wouldn't be an issue. You've been vindicated, kind hero.

Interestingly, the 10-lines-of-basic competition, which has been running the last 15 years (https://itch.io/profile/bunsen), has this covered in the rules:

15. If the game is controlled with the keyboard, use "O" for left, "P" for right, "E" for up and "D" for down if possible; this takes into account the most important keyboard layouts (no disadvantages for emulator users with QWERTZ, QWERTY or AZERTY keyboards)

At least my QUERTZ layout also works as expected in the simulator. You use WASD to move the duck, Q and E to kick left and right etc.

I think it's just the splash screen they didn't properly localize.

  • Huh, when I tried it WASD didn't work like I expected, hence I went back and checked and saw that it was ZQSD. Looks like they might have fixed it now since I posted. Either that or the lagginess caught me up; it takes a second before it starts moving forward, it might be I got caught up by that, went back to look at the instructions and noticed the ZQSD, then went back and used the arrow keys since that was easier.

    edit: just checked the code, and they cover both layouts by using the physical key code rather than the character. And that was committed before I tried it. So it must have been the fact that it was a bit slow to respond that got me.

    https://huggingface.co/spaces/pollen-robotics/microduck-simu...

Having tried (and failed) to use Issac to do the same thing, the fact that their simulator actually works out of the box, "batteries included", is a big deal for home hobbyists.

I think they just need to use KeyboardEvent.code to design for key location, not key character.

  • They do, which is why WASD (or whatever the positional equivalent in your layout is) work despite the text saying to press ZQSD. This only solves the input though, it doesn't let the page know ahead of time what letter it should tell you to press for those 4 positional inputs.

    Chromium based browsers support navigator.keyboard.getLayoutMap() to tackle this exact problem. Safari and Firefox do not due to concerns over fingerprinting. Still, it wouldn't hurt to add this second half for those users https://caniuse.com/?search=navigator.keyboard.getLayoutMap%...

Or just add the key commands as a hint to the simulation page. Was so keen to try it didnt really register the commands and assumed WASD.