published 03 Nov 2015

First blog for November.. oh how time flies. Spent yesterday completely inundated with mail and accounting. Apologies for lack of updates here.

Currently working hard to get things ready for OWC while also fix performance issues with Stable40, Beta and Cutting-Edge. Made some good progress today testing with some users on public slack. Targeting the issue of single-frame stutters (lag spikes) categorised into “SwapBuffer” on the frame graph currently.

I’m basically 100% devoting myself to fix performance issues until we are 100% (and I mean 100% for all users), since it is the main thing holding stable40 back from the remaining users which have not been able to make the leap yet.

As you can see by the stats, we still have over 40% of users on the fallback stream. This is far better than a few weeks ago (before I began promoting the new release), but we do have a way to go still.

Until this migration is finalised, don’t expect to see too much forward progress. Yes, this means “osu!next” may not actually happen in 2015, but hey, what can you do? I promise I’m doing everything I can to make osu! the best it can be.

On the topic of osu!keyboards: after the initial rush, things have quietened down, so I am leaving them in stock for the foreseeable future. Thanks to everyone who has purchased them so far; make sure to give us your feedback on the build quality and usability!

I have a few blog posts in the works which should be a tad more interesting than my daily updates (talking about the new forum design, my experience converting from sublime text to atom etc.), but I’m still prioritising actually getting-things-done over blogging, so you’ll have to wait a bit longer!



published 30 Oct 2015

Sometimes it’s very easy to spot all the things wrong with this world. Working around people who just don’t live up to your expectations, dealing with fulfilment APIs that make suicide seem like a good option, almost getting hit by a taxi driver consciously going through a red light…

So, in the face of negativity, I bring you a short-list of thing I believe are amazingly correct in this world. Because the people doing a good job don’t get called out for it often enough.

As a foreword, this list is going to be quite broad and random. Just things which I have been in contact with recently which I feel like sharing.

Slack, oh slack. Without you I would not be able to keep up with the daily flow of information. Not stopping at just replacing IRC, trello and god knows what other communication apps, Slack’s integration APIs offer endless possibilities when it comes to centralising, automating, summarising and processing information.

Discord. Yes, it’s a Slack clone. A slack clone with voice support. Aiming to replace apps by the likes of Skype, Teamspeak, Ventrillo (and doing a good job at beating them all). Being completely free to use may raise warning bells, but they seem to have enough financial support to make this feasible.

The CARROT app range. iOS development done right. As far as I can tell, one guy behind a series of apps with the exactly right amount of attitude, style and functionality. Some real innovative features which I haven’t seen elsewhere (Alarm and Weather are the ones I’m using on a daily basis), backed by timely and useful updates.

The Atom text editor. I’m finally at the point where I can recommend this over Sublime Text. While startup performance is still shockingly behind, runtime performance is now almost on-par with ST3. I am currently transitioning away from ST3 due to the negligence of the developer behind it. I’d suggest you do the same, at your earliest convenience.

GitHub, for always being there. Nothing really needs to be said here, but honestly, where would we be without you?

DigitalOcean. Honestly the only datacenter/vps/hosting provider I can recommend. These guys are pure love. If you value customer support over everything (which you honestly should when you are putting your hosting in someone else’s hands) there is really no other choice.

Chris Roberts / Star Citizen, the only game I am anticipating and hyped for. Say what you will about the development process, but I believe this project has already succeeded in ways we’ve never seen before. They’ve released content of amazing calibre, from their web UX to already playable – and fun – sandbox game modes. The future is exciting.

Kurzgesagt, now known as “In a Nutshell”. A group of designers creating quality content with the pure purpose of sharing information. Infographics in motion. Quality > Quantity. Subscribe if you haven’t already.

Oh, and if you missed it, we are getting portable osu! installs on USB sticks later this year. Completely metal body – everyone who has touched the sample has been blown away by how amazing it feels. Very limited qualities available soon.

Enjoy random posts like this? Let me know.



published 29 Oct 2015

At the expense of my inbox piling up to record heights of unread mail, I’ve been making some good forward dev progress.

Shared Project

I mentioned this some time ago, but in order to better support multiple platforms, we need to have slightly different bootstrapping processes for each operating system. To allow for this, the osu! project needed to be migrated to using a shared central projects, with separate full-fledged projects for each OS.

This code is now mature enough to push live build to cutting edge. Nothing for you to see, really, but it works and that’s a good step forward!

Separate User Data Directory

Another change which needs to be made for OS X native support is to move all user data away from the executable and game data. This allows us to properly sign our code while still allowing you to load beatmaps and skins into osu!.

This will be deployed to windows eventually as well, likely splitting most of your osu! installations into two pieces. A lot of you might be shocked and against this, but think of the advantages this offers:

  • You can access your osu! folder by Start > Run > .osu .
  • Your data will be cleaner, without being poluted by osu! system files.
  • There’s no chance you will break osu! accidentally.
  • You can easily migrate just your user data to another PC.
  • You can reinstall, uninstalll, or repair osu! without worrying about losing any of your important data.
  • You can move your user data folder to anywhere on your system.

The final release of this will include a new option to let you relocate your user data folder. For existing users, it won’t automatically migrate your data away to the new folder, but will give you an option to do so (which will be highly recommended).

Draggable volume controls

You can now drag up and down to adjust volume. Not much more to say!

Also fixed a few further regressions with spinners. New beta release going out tomorrow. New stable this weekend. More osu!keyboards this weekend. Next focus is fixing remaining performance issues with stable40. Anyone experiencing such issues get on slack and idle as much as possible.



published 28 Oct 2015

Has been a busy couple of days. What’s new?

Volume Control

Reworking of the volume control to match the final osu!next design. Say all you want about osu!next taking a while to get out, but if you’ve been keeping up with the changelog you will understand exactly how busy myself and the rest of the dev team have been on other more critical tasks. Consider that this element was completely reworked in less than a day, using our newer shader architecture.

Needless to say, progress should be fast once we get started! Most of the building blocks are coming together.

Spinner Fixes

Anyone following closely will know that spinners have been a bit broken on cutting-edge recently. They’ve actually been blocking new beta/stable40 builds going out, so I spent most of today figuring out exactly what was going on and ensuring we repair them in a fair way.

When approaching this issue – which was introduced by attempting to fix sub-60-fps spinners giving too much score – the everyone agreed that we really need to rewrite how spinners account for score, removing acceleration and a lot of special cases from the scoring algorithm and only using it for display purposes.

Unfortunately, this would likely create disparity with previous plays, so I put it on the bucket list for when I find enough time to do a proper analysis.

I did happen to come across and fix a weird bug involving replays on maps with lead-in time.

New changelog metrics

I got around to publicising some of the metrics I use on a daily basis to get how the current releases of osu! are propagating out to the community. You can find this new display on the changelog page. Follow me on the journey to get everyone to move across from StableFallback to the Stable40 branch!

Note that some release stream information is missing for older builds. This will be populated going forward (I didn’t add it for older builds because it would break existing disqus comments).

osu!keyboard shipping

We are working through shipping of the first batch of keyboards. They have been labelled and boxed and should be going out tomorrow! Expect more to become available on the store this weekend.


Mapping With Rewards (Oct. 2015)

published 27 Oct 2015

Thanks to everyone who participated in the last round of Mapping With Rewards. I still haven’t had time to go through all the submissions, but I’ve come up with some which I really like. I’ll get around to finalising the results this week or weekend.

Coming at you with round 2 of our original music selection. cYsmix doing what he does best, delivering a spooky selection of three tracks that are perfectly fitting for Halloween.

cYsmix - Fright March

This one’s an electro/trance hybrid, 160 BPM (which I think is a nice tempo for osu!) With this song, I wanted to both challenge seasoned players, as well as provide a fun and simple melody for newcomers to play - and I think I did a good job!”

Download your pre-timed osz here.

cYsmix - Moonlight Sonata

This is, naturally, not an original by me. The original was made in 1801 by Beethoven, and I wanted to put my own Trance spin on it, and it fit well with the halloween theme this month (since it does kind of have an eerie atmosphere around it!) I think this has a lot of potential for the majority of map difficulties, and I’m looking forward to seeing this one mapped in particular. It’s 128BPM, Trance.

Download your pre-timed osz here.

cYsmix - Classic Pursuit

Back to a somewhat fast-paced 140BPM Tech Dance track, heavily inspired by a lot of retro sounds, which I still managed to sound somewhat eerie somehow. Since there’s a lot of variety on this one, I’m not sure what to expect from the maps to come from this - but I’m excited! It was a lot of fun to make, but gave me a bunch of trouble.

Download your pre-timed osz here.

I’ll be offering rewards similar to last time:

Anyone wishing to map these tracks can go ahead and do so (in your mode of choice). Once you get it completed to a rankable state – preferably actually ranked! – we’ll check your map and if it is amazingly awesome you will get the bounty for it, and your map will be bundled/marked as an official map.

Bounty offered for a full set (non-collab / single game mode):

  • Song bundled with client (for a limited period of time)
  • $50 osu!store credit
  • 6 months supporter tag
  • Unique profile badge


  • There will be one winner per song. We may choose the first to appear if it’s mindblowingly amazing, or wait for other entries to compare before making a choice.
  • We reserve the right to choose the background image for your map when ranked (we are trying to get an artist to make a themed set for these releases!).
  • Collaborations are not allowed. This is a personal decision; I feel single-creator sets give the most conformity.
  • Unlike standard contests, I have the final judgement on winners.
  • Please don’t map the 8-bit/piano outros! They are supposed to play at the result screen.

I’ll keep an eye out for ranked submissions, but you can also post your map in the comments here once you are done if you want it looked at. Note that we are planning on adding new tracks every month, so if none of these suit your style then stay tuned!