Roku Developer Program

Join our online forum to talk to Roku developers and fellow channel creators. Ask questions, share tips with the community, and find helpful resources.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Romans_I_XVI
Roku Guru

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!
0 Kudos
20 REPLIES 20
dev42
Visitor

Re: Multiple Button Presses

0 Kudos
Komag
Roku Guru

Re: Multiple Button Presses

It's true, only one button press at a time, no way around it. So it makes real gaming completely impossible, and makes the sideways remote with A and B buttons just a big joke as even NES style games can't be played. But some sorts of games can work, more slow paced stuff for one thing. But a scrolling shooter is definitely out, as you can't even move around properly since rocking the "d-pad" across diagonal won't register the second direction press - you have to distinctly let go of "left" before pressing "up" for it to work.
0 Kudos
Romans_I_XVI
Roku Guru

Re: Multiple Button Presses

It's slightly annoying that you have to use marmalade to access the lower level features of the Roku. Mainly because I already created my game using Gamemaker Studio which is a paid product for cross platform game development. And now I am required to get another paid product if I want a game on Roku.

That being said it looks like they have an offer for developers right now to possibly get marmalade plus for free for 6 months. And I must say some of the features of marmalade are very compelling. I originally used Gamemaker because it was easy, but it is also somewhat restrictive in what you can do.

I hope sometime Roku either opens up the NDK, gets the Roku compiler in the free version of marmalade, or improves brightscripts capabilities.
It could make Roku your one stop platform for everything you need on your TV except of course for high end gaming.
0 Kudos
dev42
Visitor

Re: Multiple Button Presses

I'm totally with you, but for the sake of argument, aren't we giving up too easily?

Super Mario Bros on NES required up to 3 button presses, that I can account for. Direction to run + A to run faster + B to jump.

Now I'm not saying we're going to change the world, but aren't gamers good at adapting? Who's to say, that if our game(s) looked promising ppl wouldn't "learn" to let go of the D-pab direction, then time the jump? In this context, hitting the D-pad repeated could increase the character's velocity.

As for the Konami Code / Street Fighter chain of button presses = special command, couldn't a "Level 0" or training screen be created to teach the player how to play the game?

Is this ideal? NO! Is it doable? I think it is. Is it worth it? That depends.

As for porting an already working game to use different controls... when you can get Marmalade for 6 months? 😉

peace & 42
0 Kudos
destruk
Binge Watcher

Re: Multiple Button Presses

"Komag" wrote:
It's true, only one button press at a time, no way around it. So it makes real gaming completely impossible, and makes the sideways remote with A and B buttons just a big joke as even NES style games can't be played. But some sorts of games can work, more slow paced stuff for one thing. But a scrolling shooter is definitely out, as you can't even move around properly since rocking the "d-pad" across diagonal won't register the second direction press - you have to distinctly let go of "left" before pressing "up" for it to work.


I think someone already made pac-man - so that's about it.
Why do you need marmalade when you could use Unity?
0 Kudos
EnTerr
Roku Guru

Re: Multiple Button Presses

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.
IR remotes seem to be out but for BT and WiFi Direct remotes - since they are upgradable - potentially a new firmware may be released. That's assuming the board wiring actually allows 2nd press to be detected (and does not cause ghosting of a 3rd).
0 Kudos
Romans_I_XVI
Roku Guru

Re: Multiple Button Presses

As far as Unity is concerned it doesn't seem there is a way to export for Roku. "Unity Games" needs to do that and publish it themselves. That is my understanding at least. viewtopic.php?p=450097 http://forum.unity3d.com/threads/roku-3-port.224729/

I don't want to buy Galaga just to try it, but can't you move and fire at the same time in that game? From what I saw you can, but I don't know if that supports the bluetooth remote that comes shipped with Roku 3. Or they could be using the accelerometor (Which is actually my prefered method anyway, as that is what I use on Android). I'm just talking out loud to get a grasp on if it is truly the remote or if a firmware upgrade to the Roku device could fix it.

Dev42, I am with you. I have been considering ways to make my game playable with only tapping buttons and not holding them, although it wouldn't hardly be a scrolling shooter anymore and would move in to some sort of other genre. Regardless it could still be fun.

Just in case anyone wants to see the game I wanted to port, this is it.
https://www.youtube.com/watch?v=jFV3NV4uBtI

I wanted to make the Roku version much simpler and completely free. But alas, the roadblocks are in place.
0 Kudos
TheEndless
Channel Surfer

Re: Multiple Button Presses

"Romans_I_XVI" wrote:
I'm just talking out loud to get a grasp on if it is truly the remote or if a firmware upgrade to the Roku device could fix it.

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?).
My Channels: http://roku.permanence.com - Twitter: @TheEndlessDev
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)
0 Kudos
EnTerr
Roku Guru

Re: Multiple Button Presses

"Romans_I_XVI" wrote:
I have been considering ways to make my game playable with only tapping buttons and not holding them, although it wouldn't hardly be a scrolling shooter anymore and would move in to some sort of other genre. Regardless it could still be fun.
...
I wanted to make the Roku version much simpler and completely free. But alas, the roadblocks are in place.

That's over-stating it.
I remember the days of Ye Olde Apple ][ and it's controls were even more limited: keyboard buffer could hold only 1 key (the last de-pressed) and there was no key-up event - only down - so they did not know when a key was released! Plus there was no guarantee it will hear any key X while another Y is pressed down - it depended on which X and Y were. And yet, there were lots of playable games for that. One work-around was to made another key stop the movement - say Left/Right move the ship but tapping on Up or Down (while otherwise unused) will stop horizontal movement.

Here you have the luxury of getting key-up events (most of them - but experiment as i suggested above). Since there might be hardware limitation, consider designing controls for single-hand, one-thumb operation - that way they'd have to release one button before pressing another. Say Up shoots, Left/Right slides, Down stops, OK shields?

Btw, Roku 3 does not use BT - it's WIFi Direct. And there is a problem with Marmalade - the resulting app will only work on Roku 3, MHL stick and Roku 2 XS. And we have no idea how many of those are out there. But no RokuTV, no Roku1, no Roku2 nor the legacy players.
0 Kudos