End of an Era (BoatBot Development Update)

iaace
5 min readJun 18, 2020

--

Please scroll down to the end to view a tl;dr summary.

I’m iaace, and I’m the lead developer of BoatBot. BoatBot#7400 is an osu! focused statistics bot. It provides player, score, and beatmap information to around 3000 servers. I am writing this article because I feel like I have a responsibility to inform our community of changes to our development goals.

I wanted to make a discord bot.

BoatBot started out as a fun idea I had while being bored as a graduating senior in high school. I was participating in an osu! tournament with my friends, and they made a discord server for us to do team things in. “Cool,” I thought to myself, “discord is way easier to use than anything else.” I then discovered what a discord bot was and said, “surely it would be amazing if BanchoBot was on discord, and it would be even more amazing if someone made it already.” But there was no BanchoBot on discord. :( So the amazing idea did all the work and after spending a few hours in the high school library, I made BanchoBotSimulator (that’s what it was called at the time) do “ping pong” commands on May 25, 2016. Eventually I was having too much fun to not share it with others, so I made the bot public and announced it on /r/osugame on April 8, 2017. Since then, we’ve been through a lot of history within and beyond the scope of project.

The thing is, I am and have always been the primary cause for BoatBot development (adding features, improvements, and bugfixes) since its inception. BoatBot is my “child” and children require a lot of care and attention. It was also my hobby project and most of my projects start off with a surge of motivation and progress. But in the time spanning its creation until now, I have changed and the community has changed. First, I no longer wish to continue putting in the effort to drive forward progress and innovation. osu! continues to grow and evolve day-by-day, outpacing my will to keep BoatBot in top condition. Secondly, there are now other, better services to take advantage of. For quite a long period of time, we were the most popular osu! bot on discord (measured by server count). But since then, other actively-developed bots became available. Today, I am officially announcing the suspension of active development for the BoatBot project. This is a decision that I have reached upon significant self-reflection and consideration. Motivation is my primary reason for working on these hobby projects, so it is (unfortunately) quite unlikely that BoatBot development will ever pick up again.

Though, in the time that BoatBot has been operational, we’ve accomplished a lot. We’ve inspired other osu! bots to use similar command syntax to ours. We were the first to allow score comparisons with !compare. We were the first to use image recognition to scan for score images. We designed our response embeds to look great, function great, and be dense with information. We were the first to introduce country-specific tracking for players. We were among the first to introduce streaming music support for youtube videos and playlists, twitch streams, and soundcloud links. We were the first to add automatic responses for multiplayer links and uploaded osu! replay files. And finally, we still remain the longest-serving, operational, public osu! bot on discord. This is what success looks like.

So what will happen in the future? Well, first of all, BoatBot services will not be interrupted soon. We will continue to support current features and all of the communities we already serve until at least May 2022. But every year beginning on May 2021, I will evaluate service utilization along with other factors to determine whether or not BoatBot operations should cease in the following year. If I reach such a determination, a 1 year public End-of-Life notice will be provided. One year after services have been shut down, we will stop processing privacy related data requests. But for now, you can still continue to submit any/all feedback, as long as you remember that your time and effort may be more effective elsewhere (feature requests will probably die).

Though it is bittersweet to be making this announcement, it is also a huge privilege for me to be able to be able to stop working on the things I used to love so I can continue to make new things that everyone (including myself) will love. I recognize that some unfortunate developers don’t have that privilege and as such, I consider myself lucky. Not only am I thankful for my circumstances but I’m also grateful to so many others for allowing BoatBot to become the success that it is. I will first start off by mentioning our users; there are tens of thousands of you that have fired off millions of commands collectively. Trust me- I actually checked the numbers. Just your existence was enough to keep me working on BoatBot for so long, but many of you even went above and beyond to donate and submit feedback directly to us. I also want to recognize the current and former developers working on other osu! bots. Most of you are really friendly and supportive, and I’m sure you’ll have no issues picking up where we leave off. You guys are the reason why BoatBot will continue to have a lasting legacy beyond its operational lifetime. I will express my final gratitude to my shipmates, past and present. I am so proud of my staff for the work they’ve done- every one of their suggestions, questions answered, and encouragement given. Countless minutes of reading, listening, and keeping watch. It does not go unnoticed. Without their time and efforts, BoatBot would be an actual failure. Thank you all so much.

Sailing into port

tl;dr The BoatBot project is officially entering maintenance mode and efforts to introduce or reimplement features should no longer be expected.

--

--