forum

Thinking of doing my own windows phone osu port.

posted
Total Posts
28
Topic Starter
AstralPhnx
Now. I know a port of osu already exists on windows phone but it has a few bugs and things which render the game unplayable as well as the fact that it's missing quite a few features. So, being a windows phone dev with a lot of time on my hands I've thought of trying a port of osu to windows phone of my own. The difference is I'm going to try and make it more stable and fully featured.

This is what Im planning to include in this version of Osu!4WP:
Intergration with banchobot irc with friends list.
Intergration with your osu pc account
Full mod support with skin support.
Better formatting of beatmaps for the windows phone screen.
Support for 256mb devices and windows phone 8 (I may do a seprate omptimised versin for windows phone 8)
Replay support (hopefully)
Hopefully leaderboard support.
Edit mode for beatmap creation (if possible)
If possible xbox live achivements.

Hopefully this can be done and I can release a more fully featured port of osu on the windows phone store (windows phones are a lot more common currently)

If you have any feedback, tips or want to ask to help out then feel free to post below.
Also, I am stuck for a name. If you have any ideas for a name for this version of osu then feel free to post them.
Ephemeral
less thinking, more doing

it's the easiest thing in the known universe to write up about what you are going to do, actually doing it is another matter entirely

best of luck! let us know if you need any help with reading the osu! file format or anything like that (though most of this information is available already)
Topic Starter
AstralPhnx

Ephemeral wrote:

less thinking, more doing

it's the easiest thing in the known universe to write up about what you are going to do, actually doing it is another matter entirely

best of luck! let us know if you need any help with reading the osu! file format or anything like that (though most of this information is available already)
Thanks! I'm in the process of installing windows 8.1 64 bit and the windows 8 sdk to get started now! I'm also going to analize osu stream on ios to see what works with osu on a mobile display and what doesn't.
Iluya
I like the basic idea, but think you will run in some problems with your attempt very soon:

1. Most Win-devices aren't as powerful as iOSes or Androids and even on them the versions run bad to nonplayable (osu!stream excluded)- it will take quite a while (and some genuie ideas) to optimize the code (I/O-processing on osu!droid is horrible). Also your plan to include skin support is a problem here: Skins require many ressources!

2. I personally dont like the idea, that my Osu-Account-Data is running through a 3rd party program. You basically get the whole account with your plans (not saying you WILL do it; just, that it is not a big step) - On the other hand: I doubt that ppy is going to allow direct db-access :)
2.1 i dont need an integrated irc.. while playing there is no use for that and after that i can use any other irc client as well... it is just battery/bandwidth wasting.

You have taken quite a challenging task. I wish you good luck with it :)
Ephemeral
the osu! api could be extended to allow for very basic authentication in that regard, but it is something best addressed when the functionality exists to require it!
Topic Starter
AstralPhnx

Iluya wrote:

I like the basic idea, but think you will run in some problems with your attempt very soon:

1. Most Win-devices aren't as powerful as iOSes or Androids and even on them the versions run bad to nonplayable (osu!stream excluded)- it will take quite a while (and some genuie ideas) to optimize the code (I/O-processing on osu!droid is horrible). Also your plan to include skin support is a problem here: Skins require many ressources!

2. I personally dont like the idea, that my Osu-Account-Data is running through a 3rd party program. You basically get the whole account with your plans (not saying you WILL do it; just, that it is not a big step) - On the other hand: I doubt that ppy is going to allow direct db-access :)
2.1 i dont need an integrated irc.. while playing there is no use for that and after that i can use any other irc client as well... it is just battery/bandwidth wasting.

You have taken quite a challenging task. I wish you good luck with it :)
ok full skin support was a little bit huge but I was going to address that later. Also, I have thought about it and I think that I will release this only for windows phone 8 devices for 2 reasons.

1. Windows phone 8 devices are quite powerful. We're talking the high end models have 1.5 ghz dual core cpus with 1 gb of memory.
2. Windows phone 8 devices are a lot more common than phone 7 so it seems pointless making a phone 7 version mainly because I already saw that osu struggles to run on phone 7.

I could also have this version of osu identify if the phone is high end or low end and toggle off some graphical effects if its gonna slow it down too much.
Also, the reason why im intergrating irc is because all the irc clients on windows phone either don't support connecting to the osu irc or don't have an option to hide join part messages. Trust me I tried. So I was gonna try including that for that reason.

Also!! If you have any ideas for names for the this version of osu PLEASE post them!
Topic Starter
AstralPhnx

Iluya wrote:

I like the basic idea, but think you will run in some problems with your attempt very soon:

1. Most Win-devices aren't as powerful as iOSes or Androids and even on them the versions run bad to nonplayable (osu!stream excluded)- it will take quite a while (and some genuie ideas) to optimize the code (I/O-processing on osu!droid is horrible). Also your plan to include skin support is a problem here: Skins require many ressources!

2. I personally dont like the idea, that my Osu-Account-Data is running through a 3rd party program. You basically get the whole account with your plans (not saying you WILL do it; just, that it is not a big step) - On the other hand: I doubt that ppy is going to allow direct db-access :)
2.1 i dont need an integrated irc.. while playing there is no use for that and after that i can use any other irc client as well... it is just battery/bandwidth wasting.

You have taken quite a challenging task. I wish you good luck with it :)
Also, your mistaken about windows phones being weaker than ios devices. Ios devices are mainly dual core devices clocked at 1.3 whereas windows phone 8 devices are normally dual core clocked at 1.5.
So generally windows phone 8 devices are more powerful than iphones
Topic Starter
AstralPhnx
Also anyone know where I can get the base osu sdk from (Aka the base code of osu. The stuff that makes it tick) mainly because as I mentioned windows phone programs in C# and xna which is what osu is programmed in so a lot of the code would probably be the same or similar to that of the pc version.
Iluya
I agree that most win8 phones and tablets are powerful enough for something like osu...was thinking more of those win7 ones ^^

But those single core vs multi core discussion has been on the internet for a long time ;) And you cannot say one is more powerful than another, without the context. If you are able to effectively parallelizing the rendering (which is in osu!s case the most intesive task) you can benefit from more cores. But with the advanced security within devices nowadays it is more of an OS/API/engine issue.

osu!sdk is here: t/79354
Piotrekol
You can try lurking in Wojtek's osu! clone if you need to.
t/97260
Ephemeral

Tuxdude143 wrote:

Also anyone know where I can get the base osu sdk from (Aka the base code of osu. The stuff that makes it tick) mainly because as I mentioned windows phone programs in C# and xna which is what osu is programmed in so a lot of the code would probably be the same or similar to that of the pc version.
the osu!sdk exists solely to code aimod plugins - the basic source code is not publicly available, sorry! you'd have to code your own thing from scratch, mostly.
Topic Starter
AstralPhnx

Ephemeral wrote:

Tuxdude143 wrote:

Also anyone know where I can get the base osu sdk from (Aka the base code of osu. The stuff that makes it tick) mainly because as I mentioned windows phone programs in C# and xna which is what osu is programmed in so a lot of the code would probably be the same or similar to that of the pc version.
the osu!sdk exists solely to code aimod plugins - the basic source code is not publicly available, sorry! you'd have to code your own thing from scratch, mostly.
Bugger. Thats gonna be a problem unless I decompile. Urgh
MillhioreF
Not really. Most everything you need to know to code basic functionality is either publicly available knowledge (AR and OD formulas, .osu file format) or doesn't need to be known and can be coded in a lot of different ways (leaderboard, formatting). For the few gaps that exist, peppy will most likely give you parts of the source code once you have a working, well-functioning proof of concept app.
Topic Starter
AstralPhnx
Ah, thanks for that!
Topic Starter
AstralPhnx
Welp, i've hit a roadblock already but not in the form of coding problems, rather in the form of getting the bloody windows phone 8 sdk working. I tried installing it on my windows 8.1 32 bit os but it said I needed the 64 BIT version for the sdk to run. So after waiting around an hour and a half for the 64 bit iso to download I try installing it in a virtual machine. The computer resets. -_-
Giving up on virtual box I try freeing up space on my hard drive to make a third partition and triple boot. Problem being I can't find my flashdrive to put the installer dvd onto. -_-
So then, I try finding a blank dvd which I can't find and turn my room upside down looking for my flash drive. Couldn't find it. And then I realise that it wouldn't work anyway because my flashdrive is 4gb and the iso is 3.8 gb. Basicly it wouldn't fit on my flash drive. So now im TRYING to find a way to somehow install 8.1 64 bit so I can FINALLY start work on this. Sheesh so many problems and I haven't even started yet!!

Also as a side note with a project like this I dunno where to start. Should I program in the osz file decoding, the UI, or something else? With something like this where would be the best place to start?
Ephemeral
not to dissuade you from going ahead with this, but are you really up to a project of this size? a port is no small undertaking, given that you are essentially coding the game again from scratch in an environment that you are seemingly unfamiliar with. i don't really want you to waste your time and effort with this, especially if you can apply your existing talents in other ways to help out instead.
Topic Starter
AstralPhnx

Ephemeral wrote:

not to dissuade you from going ahead with this, but are you really up to a project of this size? a port is no small undertaking, given that you are essentially coding the game again from scratch in an environment that you are seemingly unfamiliar with. i don't really want you to waste your time and effort with this, especially if you can apply your existing talents in other ways to help out instead.
I wanna at least try!!! I mean heck! I need to use my windows phone dev account anyway!! Sheesh! Still, Im gonna try!!
Ephemeral
alright, well, the support is here if you need it. good luck!
smoogipoo
A day ago I started to port osu!stream to WP but realized that the beatmaps are compiled into their own format, so I gave up on it. I'd also like to try porting osu! to WP - I've got experience with cloning the gameplay as a result of one of my earlier projects but I don't have much time to port it to WP...
I think I could bring some competition to the table (first person to release their own port?) xD
TakuMii

smoogipooo wrote:

A day ago I started to port osu!stream to WP but realized that the beatmaps are compiled into their own format, so I gave up on it. I'd also like to try porting osu! to WP - I've got experience with cloning the gameplay as a result of one of my earlier projects but I don't have much time to port it to WP...
I think I could bring some competition to the table (first person to release their own port?) xD
...but the beatmap .osz files are just renamed .zip files. And the .osu files within are just text files :/
smoogipoo

YayMii wrote:

...but the beatmap .osz files are just renamed .zip files. And the .osu files within are just text files :/
No, I meant the beatmap files inside osu!stream for iOS and Android. Those files are of filetype osf2 or something like that, and are not zip files... They are quite different to normal beatmap files in that they contain the contain the song, the metadata of the map (i.e. creator, diffs, and link to creator) and the beatmap data all in one file which is not extractable like .osz, and I won't even bother attempting to use a hex editor to figure it out.
TakuMii

smoogipooo wrote:

YayMii wrote:

...but the beatmap .osz files are just renamed .zip files. And the .osu files within are just text files :/
No, I meant the beatmap files inside osu!stream for iOS and Android. Those files are of filetype osf2 or something like that, and are not zip files... They are quite different to normal beatmap files in that they contain the contain the song, the metadata of the map (i.e. creator, diffs, and link to creator) and the beatmap data all in one file which is not extractable like .osz, and I won't even bother attempting to use a hex editor to figure it out.
Oh, I missed the part where you said osu!stream :roll:
I think that's just there as a form of DRM.
Topic Starter
AstralPhnx

smoogipooo wrote:

A day ago I started to port osu!stream to WP but realized that the beatmaps are compiled into their own format, so I gave up on it. I'd also like to try porting osu! to WP - I've got experience with cloning the gameplay as a result of one of my earlier projects but I don't have much time to port it to WP...
I think I could bring some competition to the table (first person to release their own port?) xD
Or... We could work together on this port! I mean 2 people are better than one person doing their own!!! If we worked together it could be done faster and better!
smoogipoo

Tuxdude143 wrote:

Or... We could work together on this port! I mean 2 people are better than one person doing their own!!! If we worked together it could be done faster and better!
I don't like starting out a project with a programming duo - complications start occurring fairly quickly from the start (from my experiences), so, at least for a while, I'll be working solo on this project. Nothing personal - I just like doing things as I'm used to in my own time before a project gets big and dirty, and I don't even know how much time I can allocate anymore.

Besides, competition is good! Keeps you motivated (at least for me...)!
Topic Starter
AstralPhnx

smoogipooo wrote:

Tuxdude143 wrote:

Or... We could work together on this port! I mean 2 people are better than one person doing their own!!! If we worked together it could be done faster and better!
I don't like starting out a project with a programming duo - complications start occurring fairly quickly from the start (from my experiences), so, at least for a while, I'll be working solo on this project. Nothing personal - I just like doing things as I'm used to in my own time before a project gets big and dirty, and I don't even know how much time I can allocate anymore.

Besides, competition is good! Keeps you motivated (at least for me...)!
God damn it I hate competition. I can't even get started yet because of technical difficulties
TheVileOne
I guess I should join the competition as well. Good luck Tux!
obscuretrain
dont take my word on it but id assume there would be some conversion program to basically compress the files to the proper file type osf2. im not sure yet though. im still researching it
felicitousname
Keep in mind that you don't need to follow what they've done with osu!droid and osu!stream. The map files shouldn't be too difficult to understand and parse. I'd say the hardest part is probably getting the game engine working appropriately.

Good luck!
Please sign in to reply.

New reply