Forum Discussion

Romans_I_XVI's avatar
Romans_I_XVI
Roku Guru
11 years ago

Multiple Button Presses

I have seen elsewhere on the forums that people say it is not possible to capture a button press while another button is being held down. Is this true, and if so will we be getting a firmware update to fix it? My game is a scrolling shooter and it's not really reasonable to expect people to not be able to shoot while moving. The full version is available on Android but I thought I'd make a basic free version for Roku just for fun. I went in to it expecting I could grab info from the accelerometer in the remote like Angry Birds does and now I am finding out I can't even use the d-pad and the A/B buttons at the same time 😞 .

I see others posting abou the NDK, I am guessing that is the only way to do it, but it is not available to the public. It is actually very sad because I though Roku would be a device that could bring casual gaming to the TV without the need for a console.

Count this as 50% question and 50% request. Is it in any way possible to grab a key press while another button is pressed? And if not, this is sorely needed!

20 Replies

  • That idea for one thumb controls is brilliant. Forcing the user to release a button in order to press another. They won't even notice you can't press 2 at once 🙂 thanks
  • Are there even any Roku games that you can play holding the remote sideways and using the A and B buttons? I have a Roku 2 XS (bluetooth remote), and I'd tried a lot of the free games and haven't found one yet. I'm thinking I'll offer it as a menu option for my game, so people with a remote with A and B buttons can finally use it sideways!
  • "Komag" wrote:
    Are there even any Roku games that you can play holding the remote sideways and using the A and B buttons? I have a Roku 2 XS (bluetooth remote), and I'd tried a lot of the free games and haven't found one yet. I'm thinking I'll offer it as a menu option for my game, so people with a remote with A and B buttons can finally use it sideways!

    Try the recently released "Tetris", it only works side-wise. Which is not great, since i am used to move and throw the tetrominos with the right hand, yet it commands to use the left
  • Tried Tetris. You are able to hold down a directional button and press A at the same time. This at least confirms the remote is plenty capable of receiving input while a button is pressed down. This is with a Roku 3 btw. So I guess we just need a bright script update. Or at least some other way to access these functions besides paying for marmalade.
  • I can't see Tetris on my game channels list on the Roku. I have a Roku 2 XS. I assume it's simply not compatible, perhaps remote issue. So I wonder what models and what remotes allow simultaneous button presses, as that is important for game development consideration. If we develop using multiple button presses and only release to a limited set of Roku models, that might cut off a large percentage of possible sales/exposure - how much???

    EDIT - I see in the online store that Tetris is available for Roku 3 and Roku Streaming Stick. But the stick remote doesn't have A and B, so I assume if you play Tetris on it you use the remote vertically.
  • So far I'm just developing for 1 button press at a time. It's still going to be a scrolling shooter, but it ill just not be as fast paced as the real game. Left = move left; Right = move right; Up = fire; Down = shield. It's coming along fairly nice. It wil make it so even a Roku 1 could play it, instead of limiting the audience so much.
  • "EnTerr" wrote:
    See viewtopic.php?f=34&t=67758&p=432541#p432492 for the experiments i did and then can try out with a WiFi Direct remote.
    The limitation seems to be remote-related, so it won't matter if one uses SDK, NDK, MDK, UDK et ceter-ay.

    Based on recent experience, my view is "evolving" from "it's a remote limitation" (above) to what TheEndless said (below).

    "TheEndless" wrote:
    I don't know for certain, but I feel fairly confident saying that it's not the remote. It's much more likely that they just haven't exposed multiple keypresses to the BrightScript layer (yet?).

    I got a chance to test bluetooth remote with Marmalade SDK and multiple simultaneous button presses worked beautifully there. That was the BT remote of the 30xx/31xx models, unclear how WiFi-D one fares. WiFi-D remotes also have the "rocker" type of D-pad, you'd think designed with multi-button (like diagonal press) in mind. So there seems to be possibility of bringing multi-press to BRS but i won't consider the likelihood of that high, it does not sound like a compelling "business case" for the Co.
  • I guess my thinking was because brightscript is supposed to be compatible with all current gen devices. When we have remotes (like the IR one for Roku 1) that possibly are incapable of accepting multi press, they probably wouldn't add the support to brightscript. Where as marmalade is already limited to devices that are designed to work with these newer features. Just my thoughts on the subject.
  • BradC's avatar
    BradC
    Binge Watcher
    "EnTerr" wrote:

    Based on recent experience, my view is "evolving" from "it's a remote limitation" (above) to what TheEndless said (below).



    simple proof in Brighscript for this.




    If you have a roku 3, throw together a channel that shows button press codes passed through the roUniversalControlEvent


    something like:


    			event = wait(1, port)
    if (type(event) = "roUniversalControlEvent") then print event.GetInt()


    works nice enough, shows button presses and releases.



    Now, press and hold "volume up" on the roku 3 remote.

    you get a "thunk" sound, and the code (24) will display in console.

    release the volume up button

    you get a thunk sound and the key up code (124) will display in console.


    now, press and hold the ok button on your remote.

    you get the code for ok (6)

    all very nice.


    while you are still holding the OK button down, press the volume up button on the remote.


    you will not get any key codes in the console, but you still get the "thunk" sound of the volume button being pressed. The remote is sending the key, the roku is receiving the key, but brightscript simply does not register it.
  • Interesting! But we will all just have to plan for single button presses only for the (probably long) foreseeable future.