2017 04 11

published 11 Apr 2017

Bringing you the latest in lazer progress!

Results screen

One of the few elements of “osu!next” design we haven’t yet made public is the results screen. I’ve been working on this in the background whenever I get time, and am almost ready to reveal the first iteration. Keep in mind this will still be missing some design elements which we need to add more framework support to make work.

Part of the work I did today was a refactor on loading rankings into a leaderboard, as we will be reusing the leaderboard display on the results screen.

You want a preview? Ok, fine.

New HUD design

While the visual effects aren’t in yet, I’ve started moving the HUD elements to the correct place on screen. This include finally moving the combo from the bottom-left location. Keep in mind you’ll be able to customise all of this.

Beatmap details at song select

jorolf has been working away on the beatmap details panel which will sit in song select. I’ve been reviewing the code and trying to mould it into a usable state and I think we’re almost there. You should see this live very very soon.

Fixes galore

  • No more crashes when clicking the “restart after update” notification. You won’t see this until the build after the next build, obviously.
  • Fix combo being incremented twice in osu! mode. THis was a regression caused by the work we did on game mode modularity for osu!taiko.
  • Fix off-screen transforms sometimes not being applied correctly. I’m not sure if this was visible in normal game execution, but we’ve triggered it a few times in test cases.
  • Adjust cursor appear/disappear animations. They took too long and looked a bit cheesy before.
  • Improvements to transition when retrying or leaving play mode. Minor changes, but things should look a lot smoother now (mainly from hiding the broken gameplay cursor).

No release today

Unfortunately there was no one available to review my code so there won’t be a new build going out today.

For those that haven’t been following, we are enforcing strict code review guidelines which means that no build can be published without one other core developer approving it. Currently there are only three of us with the knowledge of the larger picture (and how the framework works inside-out) but I hope to add more people to this group as they pick up the project and become adept at identifying potential issues with peoples’ code.

Spring fan art contest

Entries for the fan art contest we announced recently have closed and the results are up for voting. There is some amazing work, so I urge you to go check it out.


2017 04 10

published 10 Apr 2017

Bringing you the latest in lazer progress!

Component Refactoring

Refactored all UI components to use Bindable<T> for their values (via IHasCurrentValue<T>. Making all UI components conform to using one variable name makes it easier to use them without fumbling around for things like SelectedItem, Value or Text. This also unifies event handling logic to a single location and simplifies binding to UI controls from configuration or other components.

Retry via hotkey

Code review and minor modifications of retry via hotkey support.

Playfield aspect and sizing improvements

Paired with smoogipooo on further taiko/playfield modifications to allow for custom aspect scaling and clamping, as well as overriding support (for cases like a tournament spectating client where we want the play area to be very specifically defined on the screen).

This is taking up a lot of our time recently, but we are thinking forward to what will be required of other game modes and tackling problems ahead of time. There should be significant payoff down the track. We are also carving out an environment which should allow custom game modes not just the bootstrapping and scaffolding to just-work, but also the flexibility to customise anything they may need to.

New release with all the above

2017.410.0 is now available from github releases (or via auto-update if you already have lazer installed)!


Back In Business!

published 09 Apr 2017

Hello guys! It’s been a while since I’ve posted here, but I’m back to set things on track. The main reason for lack of posts is that I have been focusing all my spare time on the osu!lazer project. We are seeing results from this though – it’s progressing forward at very agreeable rate.

Let me try to bring you all up-to-date. We have fortunately had dev meeting posts over the last few months, so while I haven’t been personally posting, we aren’t that far behind.

  • This blog is now jekyll powered. I switched ppy.sh across to HSTS and in the process found out that tumblr doesn’t support SSL on custom domains, so this was a necessary step to maintain compatibility. All said, it’s a much better platform for zero-overhead submissions (I can just commit a markdown post to a git repository and that’s that) so I figure it should allow me to post more often.
  • osu!lazer now has taiko gameplay support! I’ve been working very close with smoogi (who has been focused on taiko for the last month) to ensure we are moving forward in a modular and consistent direction. Although the taiko implementation took longer than we both expected, I believe we have paved a very solid path for future game modes.
  • osu!lazer also has replays, scoreboards, mod select, and much more! If you are interested and haven’t checked it out yet, lazer is available for public consumption already. We are aiming to add a dedicated chat channel in-game for testers to discuss the game in the coming weeks, so stay tuned for that.
  • The flow of featured artists will continue. We have a few large collections of songs that are almost ready to make public, so keep an eye on the featured artists page if you are a mapper, or let your mapping friends know. We are very serious about getting 100% licenced music and need your help to have amazing maps made for the music we acquire.

I plan on doing consistent ask-me-anything posts on this blog again, as questions pile up. If you have any questions you would like me to answer and think that your question is one that many people would like to see an answer to, simply tweet or email me with hashtag #amapeppy and I will include the question and answer in my next AMA blog post.

I know recently I may have been a bit quiet on the public communications side of things, but I am spending every second possible of my life working on the future of osu!, so please stay tuned and be patient as we develop some amaze for you guys!


2017-01 dev meeting

published 26 Jan 2017

Hello there! Ephemeral here with a long-awaited meeting guestpost. This is my blog now. The holiday season around December pretty much vacated most of the office (the actual osu!office and the virtual one too), so we opted to skip the December meeting and hold a private one in late-January instead.

Big one this time (even though I say this every time), but especially so since we’ve got two months of content to roll into one post. We’ll be holding the Feburary meeting in the public, potentially even on osulive (ooh, fancy). To help break this up a bit, I’ll be splitting the post into two categories, namely Development and Community.


  • osu!lazer progresses nicely, with some very basic elements of gameplay already implemented, and more coming. This is significant because laying down the groundwork for these “universal” elements (hp bar, health, failing logic etc) means doing most of the work for multiple modes at once. As far as usability goes, robust filtering will soon be in the song selection menu, and we hope to get the osu! gameplay functionality largely intact (or at least somewhat usable) by the time the next meeting rolls around. Kind of a big deal.
  • A somewhat ambitious aim, but we plan to get the next major World Cup running on the osu!lazer tournament client. Still somewhat up in the air, but it is a short-term goal of ours and something to (hopefully) look forward to. This being a thing means that the spectating backend for lazer would be largely complete, as well as rudimentary connection to Bancho - two pretty hefty milestones for a project that has so far been purely client-side. smoog’s got the fire in his eyes though, so keep your own eyes peeled!
  • Some infrastructure improvements on the server side of things should solve the performance hiccups we’ve had lately. Introducing multiple scores per beatmap wasn’t as simple as it sounds, and ended up contributing to some extra load on the backend. peppy hit things with hammers and got it all working again.
  • The osu!wiki backend has received some significant improvements, and more will be coming. nanaya has been hard at work making the new wiki system tick (you can see a little of it here) whilst a team of contributors have been busy porting the old articles over, most of which will be completely rewritten.
  • moddingv2 (or beatmap discussions) has entered its first large-scale public testing. Over the coming weeks, we look to test several dozen beatmaps across all modes and categories in the new system, hopefully paving the way towards its full-scale implementation later in the year. Big news.
  • More achievement badges are planned, including some very difficult ones. Unofficially titled “Elite” badges in their development phase, we think that these new tasks will tickle even the most jaded osu! player looking for something new. If you enjoyed the fortnight-long hunt for Equilibrium, you’ll like these new badges - but there will only be one per release, alongside some other more “ordinary” medals.


  • We’ve made some pretty serious headway on the Featured Artists initiative. Outside of adding 4 new artists and over 60 tracks since the last time we mentioned it, the system itself saw some pretty gnarly improvements, ranging from more buttons for artist linkback to a fully-fledged album display for categorizing songs. sakuraburst’s listing is a supremely pretty example of this working excellently. We’re nowhere near done with this yet, so keep your eyes peeled for much much more on this front.
  • Loved is moving out of its “voting” phase and into a new phase of testing before proper implementation. Mappers will soon be able to manually apply for Loved status to be applied to their maps, assuming that they meet a few criteria. We’ll discuss this in more depth in a dedicated newspost.
  • 2017’s events will be much more regular. We’ve drafted a schedule for official events throughout the year. Previously, only the World Cups were held with any sense of actual organization - MBC’s were more like “whenever someone felt like it” beatmapping contests. Oops. We haven’t forgotten about the CBC either (Nadeshiko Sensation), we’re just waiting on a few things to be complete before we move ahead with the relatively herculean task of assembling a collaborative mapset from 15 individual users, including some backend changes to make it a little easier for us, and maybe for you too in the future.
  • Expect more use of the osulive Twitch channel going forward. Nothing concrete is ironed out at the moment, but we have designs to support the streaming members of the osu! community much more than we historically have, and hopefully produce more livestreamed content for everyone to enjoy. Things like the osu!talks, so on, so forth.

There were a lot of ideas and the like thrown around during this meeting, but don’t mistake some of the relatively lofty goals listed as a sign that we’re aiming too big or too far out of our bounds. Things are starting to pick up properly, and the hard work of dozens of contributors is beginning to bear fruit.

If there was a time start being excited, it’d be around about now.

See you next month!


2016-11 dev meeting

published 01 Dec 2016

Ephemeral here again (where’s that peppy guy anyway.. this is his blog!). November comes to an end. An unusually productive month for us this time around as the pace picks up like crazy - hopefully a sign of times to come!

Lots to talk about this month, from osu!lazer previews abound as the new client development really starts to hit full swing, to improvements to the new website and much, much more. This month’s meeting was a public one, so there is a handy video log of everything that went down in real time. Follow along if you like - or not, the video is an hour and a half long, after all.

Here’s a summary of what we spoke about:

  • Development on the new game client (osu!lazer) is progressing very, VERY quickly, with a semi-playable release of the game available for fiddling with (see a video preview of how things are looking). The core developers have been hard at work over the past month, and between the three of them (and the assistance of many community developers), they’ve managed to knock out the very basic foundations of osu! in the new framework we spoke about over the past few months. While it isn’t exactly competitively playable at the moment, it is a very strong and very visible sign that progress is really beginning to kick into gear as things start to heat up. The new face of osu! may come sooner than you think!
  • Significant improvements to the new Contest system have made it significantly easier to host events going forward. nekodex has been hard at work beefing up the system in the wake of the CMC (community mapping contest), soon to be released. Beatmapping contests were previously held on an incredibly dated system that sort of just barely worked. There’s also a nifty contest overview for people to browse if they’re looking for a contest to get stuck into. No more trawling through old tumblr/news posts to get involved!
  • moddingv2 (or Beatmap Discussions) has entered small-scale public testing, and has already improved DRAMATICALLY over its last iteration. See it for yourself here. nanaya’s been busting his nuts over the past month to get things done, and the system is lacking only a few cursory additions before it is ready for full-scale deployment. This is really big news, and will permanently alter the face of modding (and therein, mapping) for the future.
  • Following on from improvements to big-name systems, work continues in earnest towards eventually phasing out the old website completely. Many systems are basically done or in a usable state on the new website, and it shouldn’t be terribly long before the stragglers are caught up enough to say goodbye to the old site and hello to the new.
  • The Featured Artist roster is going to fill out very quickly in the coming months as many new artists are signed on. The roster has sort of been stagnant for the past few months, but will be revitalized and prioritized going forward to hopefully provide the osu! community with a solid source of music from wickedly talented artists to make maps with.
  • Loved maps will be accelerated in their addition over the coming months, slowly tapering out as the pool of eligible maps runs out. When this happens, an alternative method of addition will be unveiled, hinted to basically be a flat kudosu-to-star-priority exchange. This will give tremendous weight within the system to prolific modders who have accrued hundreds or thousands of kudosu over the years.
  • A new schedule for upcoming events in 2017 will be made available early in the year as we move towards a more structured model for hosting community events. Not much more to say about this other than that the MBC’s (monthly beatmapping contests) will be making a return in January, and there will be consistently more non-gameplay related events to go around as well, such as fanart contests, remix contests, and much, much more.

All in all, 2017’s shaping up to look like a really good year for osu!, and it hasn’t even started yet!

See you next time!