1. osu! forums
  2. osu!
  3. Development

Hi there,

I recently found out about the Osu!droid port for Blackberry Playbook but sadly couldn't play it for unknown reasons (and propably the performance will suck anyway :( )
So I decided to write a port of Osu! for Blackberry (henceforce named Osu!BB).

Right now I'm preparing the project files and writing the first lines of code.
As I already programmed a few games and other OpenGl (hardware accelerated) applications for Blackberry Playbook / Blackberry 10 I already have an Template and just need to code Beatmap loading, rendering, score system and of course touch handling.

But the first problem is the one I have problems with right now:
Are there any file descriptors for the Osu! beatmap format?
Reverse engineering that data would be very hard...
If anyone knows how the file format is structured - can you please tell me?

I am confident that I will be able to get a running version in about a week if I have the needed resources at hand so I hope I can get some support here (peppy included :) )


Ok here is the first beta release for you guys :)
Please see this post for more information.

It's not actually that hard.
Just go into editor:
place circle, then place next circle, with clap hitsound, then next circle with finish hitsound, then next circle with whistle,
place three different spinners, with three different hitsounds
place slider, firstly use 3 point slider (so just add one curve point)
then place a slider with 4 points (two curve points)
then place a slider with red curve point (so place 2 curve points, and the overlap themselves).
And about sliders - slider length is NOT defined, you have to find it out by yourself, dependently on the BPM.
And you got pretty much everything.
Actually I found a way to get the info quite easily just some minutes ago:
There is this project of running Osu! in the web http://www.osu-web.com/ which already loads storyboards without any problems so right now I'm looking through it's loader code.

Thanks anyway :D
Here a short status update what is already done:
  1. Hit-circles rendering
  2. Loading of beatmaps
  3. Music

Right now I am working on rendering of sliders.
If anyone has suggestions on how to render these decently with OpenGl, please tell me.
I am still wondering how to calculate these bezir-curves and then how to render them.
Because the Playbook has a pretty good graphics chip, I can use shaders for effects.
(To be exact: I have to use shaders for everything I render).
Sorry for the long wait.

To be honest, I already have a stable, playable client since a few days ago,
But recently I got really ill and so I had (still have) no time to post an update.

So here I just want to let you know that I already have a working Osu! BB client and as soon as I can I will post a video and screenshots of it here.
Of course you will also get the download as soon as I can get it ready for you.

Björn Zeutzheim
i am waiting for this <3
Thank you!
As soon as I don't have to be 14h per day in bed I will try to finish my work on Osu! BB :-)
But currently my head feels like it could explode anytime so this will properly take a few more days...
Ok here we go!
The project finally reached a stable playable state!
Nearly everything works!
There are just a few things where I am missing some information on to implement them correctly.
I hope I can get some help from peppy for these, as these information are missing in the Osu! wiki.

Currently working features:
  1. Hit-circles
  2. Sliders (but I'm still missing the correct slider-track bezir algorithms)
  3. Spinner
  4. Local highscores
  5. Local playername selection
  6. All skins work (Default-skin -> User-skin -> Beatmap-skin)
  8. Filtering and sorting of songs in song-selection
  9. Random song selection
  10. Song preview in menu with Osu!-button beat animation (I love this feature :D)
  11. Cache of beatmap files on device
  12. and much more...

What is still missing:
  1. Correct slider algorithms (I selected one matching in most cases)
  2. Correct timing-values for miss / 50 / 100 / 300 hits (no information available)
  3. Beatmap-difficulties (no information available)
  4. Difficulty multiplier for beatmaps (no information available)
  5. Storyboards (I don't know if the Playbook has enough power to handle these but I will try)
  6. Online support (of course no information available - I hope I can get support from peppy when the project advanced enough)
  7. Replay support (I will see if I can implement this)
  8. Mods (I can propably implement all exept flashlight because this is a touch-device)
  9. Download of beatmaps from http://osu.yas-online.net
  10. Multitouch-support (Currently only one touch is registered and I don't know if I even want to support more)

Because I am a big fan of Osu! and a motivated programmer myself, I hope I can get some support for the missing features.
I will also try to upload a video featuring gameplay in the next few days.

Björn Zeutzheim
Here are some screenshots for you:

Added support for online login (just to show user avatar for now - still no online highscores of course)
Wow, How did you manage to make it so fast?
Is it possible that I could peek into a source code for my personal learning purposes? I could even help with ranking support (If so, pm me)
I would gladly accept support in any way.

Currently I am managing a local repository for the project but I will get it online soon (for now the source code looks a bit horrible in some places).

If you want to help, please contact me.

(And about how fast I got this project so far: I am a hobby (game-) programmer since a few years and collected a lot of experience in programming.
But I was ill a week and couldn't do anything - normally I would be much further by now :)
still waiting for this

gogogogo <3
Ahh--- !
I'm so sorry for the long delay :o
Currently there are upcoming exams at my university so I don't have that much time to work on this and when I had time I somehow got distracted by another project (Unity rocks xD) ... :?
I'm really sorry !!!

But on the other hand I cann assure you that the app is almost complete and there is not much left to be done.
For those who don't mind a few bugs and scores that differ from the original Osu!, I can offer you a beta release.
I will try to perfom a quick check today (current time: 01:35 so for me it will be tomorrow) and if everything is acceptable I will probably release a beta.

Björn Zeutzheim
Ok so for all who had to wait soo long here it is:

Some information regarding this release:
  1. This is still beta! Don't expect everything to work!
  2. If you notice a bug (crash) and want to report it, please add the content of the log located at "misc/Osu!/log.txt".
  3. Download of beatmaps only works when you have logged in and are a supporter!
  4. Scoring does NOT get affected by beatmap difficulty right now. This is currently on top of my ToDo list.
  5. To play beatmaps put the extracted folders anywhere under "misc/Osu!/Songs"
  6. Skins are supported and loaded from "misc/Osu!/Skins".
  7. Currently there is a bug with skin-images saved as greyscale-alpha (images with 2 channel). My image-loader does not support that format right now. If you want to find out if this is the case for a certain beatmap / skin check out the log after testing it.
  8. Highscores are currently stored as one file per beatmap per difficulty (like "BEATMAP-NAME.osu.scores")

Björn Zeutzheim
Did anyone try out the beta yet?
Just wondering because there was no response yet :D
Hey, I will try out your beta on my BlackBerry for you if you would like. :D I'll give my thoughts on it soon in a week or two.
Hey here is a slightly new version with some bugfixes and improoved timing (time difference between audio and visuals)


I will finish the project ASAP after my last exam on 17.07 !

Björn Zeutzheim
tried the latest and it just exits right after the loading screen

am i doing something wrong here?
Could you post / send me the log?
It is located in the directory "shared/misc/Osu!/"
show more
Please sign in to reply.