published 16 Sep 2015

Fixed BSS connectivity issues and started working with users who are encountering window handle overflows to solve that one. To me, this is the only remaining blocker for getting out the new stable40 build. Caught up on accounting and email. Fixed a few other bugs that I came across while testing the above issues (BSS should be more reliable than ever as a result).

Working through some legal issues at the moment which are stealing away my time (namely Oregon State University not wanting me to file a trademark for osu!). I can see this one taking a long time to resolve, but I’m willing to ride it out and see how things go.

Days like this I wish I had more interesting stuff going on to share with you, but alas.



published 15 Sep 2015

No releases happening today, but some good forward progress. I took to fixing the scoreboard display – which got a recent font overhaul – to display more logically across different multiplayer modes. Team scoreboards now display symmetrically on the sides of the screens, with hit explosions more subtly placed on top of players' avatars, rather than off to the side. There is of course a lot more that could be improved in areas like this, but the huge UI and UX gains will come with the osu!next implementation. Not quite ready for that (and implementing it in small pieces doesn't feel right). Netcode is looking more stable than ever, and errors reported from the latest CE build are at an all time low. Just need to fix a [few lingering issues](http://puu.sh/kc2Bi/e703656e2d.png) and we'll be good to go. While fixing up the scoreboard, I decided it was about time we have a testbed for multiplayer games, so I created a complete [multiplayer](http://puu.sh/kc1z6/94d5c619a3.mp4) [simulation](http://puu.sh/kc0Fv/47e735a2e5.mp4). It uses real online players but generated random score increases (that *almost* make sense from a scoring perspective) to allow for testing multiplayer matches and result screens. Should help a lot with debugging, going forward. In other news, I've decided to start instagram. I'll be posting a photo a day until I run out of photos to post (likely never?). Should be some interesting photos I haven't yet published anywhere, so if you're into that kind of thing then please [follow along](http://instagram.com/__ppy)! Will end up being a stream of life and events in Japan, since that's where I've been for the last few years.

may start posting huge backlog of photos to instagram. what say you?

A photo posted by Dean Herbert (@__ppy) on



published 14 Sep 2015

Continuing efforts towards getting the next stable release out. Today was general bug-fixing and netcode improvements. Just to be safe, the new net requests now support automatic retrying for all requests game-wide (we were getting some sporadic TLS failures around once an hour, which this solves). Still some issues present with larger BSS uploads for some, but general bancho connectivity should now be fixed in cases it was performing worse than the old code.

Added an extra filter on the old public release stream to ensure that all users automatically updated to the new stable40 release are English speakers initially. This will help smooth the upgrade process and let us fix remaining issues without worrying about language gaps.

I kind of have a plan to push out the stable40 release tomorrow, should nothing come up. There’s still a few lingering issues to work through, but fingers crossed they should take less than a day to solve (new scoreboard font alignment / bss netcode issues).

Not much interesting to say recently! We have started to move towards embracing c# 6 with all its string interpolation and null-conditional goodness. Also working towards automating code style checks in the CI build process. Just another small piece of the puzzle in the move to open-sourcing the client.

Oh, and for those of you who have contributed to the osu-web project via bounties, we haven’t forgotten about you! If you feel like we have, then please bump your issues. If not, wait patiently and we’ll do our best to give you feedback until your code is merge-able. As the osu-web project is still in early stages, there’s still a lot of large changes going on, which makes handling external contributions a bit slower than I’d like. We’ll work on this.



published 11 Sep 2015

Gonna be a super-quick post today since I completely wore myself out on code.

Big numbers, big changes. All in a very positive direction.

It’s rare I find such an opportunity to focus on code like I did today. I will inevitably regret it tomorrow, when I start playing the catch-up game with the many shitstorms that await me in my inbox.

Best of weekends to you all!



published 10 Sep 2015

Today I finally managed to get the network code updates I’ve been coding up over the last couple of months to work flawlessly. They are now live on cutting-edge, giving generally better reliability, compatibility and most importantly SSL across the board.

For those asking why osu! hasn’t used SSL until now, let me explain: the HTTP implementations available in .NET 2.0 back when I made osu! were very shoddy. Even the built-in WebClient had so many quirks it was unusable (along with the low-level stack it was built on). I constructed a custom library to handle everything we needed back some time, and we’ve been using that until now.

Why it has taken so long to switch is simply that it didn’t make sense to rewrite an implementation while we were still on .NET 2.0. The newer framework versions have very solid networking (used by many aspects of windows itself), so I was holding off until we could make use of them. Now is that time! Getting rid of a huge chunk of custom code and replacing it with a lean helper class sitting on top of the .NET 4.0 stack.

Not only will switching to cutting-edge give you better performance, newer features, hundreds of bug-fixes and a fresh new theme song, it will also make you more secure than ever before. What are you waiting for? :)