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? :)