Prince of Persia port for Roku streaming box

Threads about other remakes and ports.
lvcabral
Vizier
Vizier
Posts: 115
Joined: March 11th, 2016, 10:34 pm

Re: Prince of Persia port for Roku streaming box

Post by lvcabral »

When I moved to work here in US (back in 2011) I got a "smart TV" to the living room and a "dumb" TV for my bedroom, so I purchased a Roku to have Netflix available there. I also had a hard drive with my movies and music that was connected to my wi-fi network but it also could not be played by my "dumb" TV neither by Roku.

That's why I decided to learn Brightscript, to develop a media player to implement support for the HipServ API (my Seagate HD has it) and see my movies laid down at by bed :)

So I kept developing for the platform as a "free time" hobby.
lvcabral
Vizier
Vizier
Posts: 115
Joined: March 11th, 2016, 10:34 pm

Re: Prince of Persia port for Roku streaming box

Post by lvcabral »

Finally released the "Feature Complete" version!

Here is the Changelog:
https://github.com/lvcabral/Prince-of-P ... angelog.md

And the Demo video:

User avatar
Norbert
The Prince of Persia
The Prince of Persia
Posts: 5743
Joined: April 9th, 2009, 10:58 pm

Re: Prince of Persia port for Roku streaming box

Post by Norbert »

Congratulations, it looks polished.
So, is this something you'll be able to make into a Roku channel?
I did search this and didn't find your PoP.
Maybe unofficial channels can only be found using a Roku?
lvcabral
Vizier
Vizier
Posts: 115
Joined: March 11th, 2016, 10:34 pm

Re: Prince of Persia port for Roku streaming box

Post by lvcabral »

Norbert wrote:Congratulations, it looks polished.
So, is this something you'll be able to make into a Roku channel?
I did search this and didn't find your PoP.
Maybe unofficial channels can only be found using a Roku?
Thanks Norbert, have you found your name in the video?

The channels can be published as public and private. The public ones needs to be tested by Roku team and are searchable on the store, the private ones are only installable using a link provided by the developer.

There are several sites that index the private channels.

I don't plan to publish it as a public channel, I already published the link to install it in several forums.
User avatar
Norbert
The Prince of Persia
The Prince of Persia
Posts: 5743
Joined: April 9th, 2009, 10:58 pm

Re: Prince of Persia port for Roku streaming box

Post by Norbert »

lvcabral wrote:Thanks Norbert, have you found your name in the video?
Yeah, one of the highscore entries, and also for the Prince of Wateria mod. ;)
lvcabral wrote:I don't plan to publish it as a public channel, I already published the link to install it in several forums.
Ah, I see.
David
The Prince of Persia
The Prince of Persia
Posts: 2846
Joined: December 11th, 2008, 9:48 pm
Location: Hungary

Re: Prince of Persia port for Roku streaming box

Post by David »

lvcabral wrote:And the Demo video:
At 3:40, do I see a standing jump over a 4-tile pit?
Maybe the video should show a bit more from the Mac graphics? Currently only the intro scene is shown using them. (at 2:00)
Norbert wrote:I did search this and didn't find your PoP.
That's a strange search: The only two things that actually have "Prince" in their names are listed last.
User avatar
Norbert
The Prince of Persia
The Prince of Persia
Posts: 5743
Joined: April 9th, 2009, 10:58 pm

Re: Prince of Persia port for Roku streaming box

Post by Norbert »

David wrote:
Norbert wrote:I did search this and didn't find your PoP.
That's a strange search: The only two things that actually have "Prince" in their names are listed last.
What's even stranger is that if you do the search yourself (simply enter "prince" in the input field), it only gives the two matching entries, and if you then keep using Enter on the URL bar it sometimes lists the two matches first and sometimes last.
lvcabral
Vizier
Vizier
Posts: 115
Joined: March 11th, 2016, 10:34 pm

Re: Prince of Persia port for Roku streaming box

Post by lvcabral »

David wrote:At 3:40, do I see a standing jump over a 4-tile pit?
You saw right, it is a bug that I left as a "trick". The limitation we have with the remote control, not being able to press two keys at the same time for more than 1 frame, makes very hard to make some run-jump-hang moves, so besides the "shift toggle mode" I also made simpler to hang in some extreme situations. In a word "playability".
David wrote:Maybe the video should show a bit more from the Mac graphics? Currently only the intro scene is shown using them. (at 2:00)
I will make a playthrough video alternating the graphics, also including a mod I did with PoP 1.4 tiles (no custom levels)
David wrote:That's a strange search: The only two things that actually have "Prince" in their names are listed last.
Roku's web team sucks.
lvcabral
Vizier
Vizier
Posts: 115
Joined: March 11th, 2016, 10:34 pm

Re: Prince of Persia port for Roku streaming box

Post by lvcabral »

Some douchebag changed the skin of my port and published as his own work at the Roku Channel store:
https://channelstore.roku.com/details/2 ... sco-prince

I reported to Roku, not sure if they will take down.
User avatar
Norbert
The Prince of Persia
The Prince of Persia
Posts: 5743
Joined: April 9th, 2009, 10:58 pm

Re: Prince of Persia port for Roku streaming box

Post by Norbert »

lvcabral wrote: July 10th, 2019, 6:55 pmSome douchebag changed the skin of my port and published as his own work at the Roku Channel store: [...]
Hm, that's annoying...
I hope Roku will take theirs down.
lvcabral
Vizier
Vizier
Posts: 115
Joined: March 11th, 2016, 10:34 pm

Re: Prince of Persia port for Roku streaming box

Post by lvcabral »

Last time I came here with bad news (the "pirated" channel was removed by Roku). Now I bring good news!

For a long time I was thinking in creating some kind of emulator for Roku, so my games could be playable for people that don't have the device, as Roku never provided such application. The issue was the fact that I would need to write a compiler or interpreter for BrightScript, the Roku scripting language, and that seemed to me as a too big of a challenge. It was until I found this project: https://github.com/sjbarag/brs

This is an open-source command line tool that some Hulu developers are creating that implements a full interpreter for BrightScript, and that was the foundation I needed to develop my project. I immediately started collaborating with them, implementing the missing parts of the language (lots of thing are still pending), and I went and created a feature branch (brsLib) in my fork of the project to give it a try on the viability of this project.

As I'm not a TypeScript/JavaScript developer, I've been learning a lot about the stack and finally I managed to create a working prototype, I'm very happy :D ! The remote control emulation was the most complicated feature to find a solution, as brs, being an interpreter, is basically a big-infinite-synchronous-nested-loop, and even moving it to a "web worker" to free the browser UI thread, Javascript does not implement any way to to stop the web worker and process the event log. After nights of investigation I discovered SharedArrayBuffer() and it did the trick.

Below is a video of the emulator running one of the early prototypes of Prince of Persia with no code changes! The performance is bad as the code is repainting every single tile every frame, and as an interpreter things get slow. I will work to improve both the emulator and the sample code to make it faster.

4DPlayer

Re: Prince of Persia port for Roku streaming box

Post by 4DPlayer »

That is good news!
User avatar
oitofelix
Wise Scribe
Wise Scribe
Posts: 227
Joined: February 17th, 2016, 1:59 pm
Location: Brazil
Contact:

Re: Prince of Persia port for Roku streaming box

Post by oitofelix »

Congratulations! Keep up the good work! :)
Bruno Félix Rezende Ribeiro (oitofelix)
MININIM author
lvcabral
Vizier
Vizier
Posts: 115
Joined: March 11th, 2016, 10:34 pm

Re: Prince of Persia port for Roku streaming box

Post by lvcabral »

Advanced a lot with the emulator, it can now run my remake of Lode Runner (instructions to test on the release below)
https://github.com/lvcabral/Lode-Runner ... /v0.17.700

I'm now in the process of making Prince of Persia run smoothly (as much as possible) on it. PoP is a challenge because the emulator is an interpreter and it get's slow with too many instructions to paint the maps and the trobs and mobs.

The adaptation is needed because the emulator does not support all BrightScript features (yet) so I need to make it to a minimun denominator. Soon you guys will be able to try my port! That was something that always frustrated me in this project, very few people has access to a Roku outside USA, with this, more people will be able to play my version of the game :)
User avatar
Norbert
The Prince of Persia
The Prince of Persia
Posts: 5743
Joined: April 9th, 2009, 10:58 pm

Re: Prince of Persia port for Roku streaming box

Post by Norbert »

lvcabral wrote: September 3rd, 2019, 7:43 pmSoon you guys will be able to try my port!
Sounds good, take your time.
Post Reply