The username issue

Mojang is preparing right now for people to be able to change their username. Instead of a username, people will have long, random code (called UUID, for example “87a39b0fd47b445dbd2e9ff86f0c70d3”) that will ensure their identity. They username will be just a kind of nickname which will not matter to minecraft anymore for identifying users.

While this is nice for minecraft, this is an issue for us since we store the username also in many databases and most prominently on this blog and forum to identify users.

In order to deal with this, there are several steps required:

  • Make the custom-written code UUID-aware. Whenever some of the code is called that we wrote ourselves, it has to know the current username AND the UUID of the users. This is done already.
  • Track username changes. The custom code has to be able to update it’s database whenever someone logs in after changing their username and potentially even keeps a history of usernames to be able to track actions back properly.
  • Upgrade the minecraft and all plugins as they are released and start working with UUID instead of usernames. This is work in progress. The first plugin was released already. I also have tested briefly all the existing plugins with the new minecraft version and there does not seem to be a huge break in the system. So we might be able to upgrade to the latest minecraft version soon.
  • Make the custom-written code able to deal with changing usernames. This is a major issue, since we store a LOT of information based on usernames. All the tables will have to be updated to use the UUID instead. This is a major coding effort that has to be done before we can upgrade to 1.8, whenever that is released.
  • Make the blog UUID aware. We cannot continue to allow people to manage their lots, karma or other things on the blog if the username on the blog is not always the same as in the game. So we have to replace the logins of all users with their UUID, and then manipulate the login form so that you can enter the current username, the blog will then retrieve your UUID from the database and use that as your actual login. Instead of your userlogin, your nickname field will then be updated with your changing username as we go, so people can recognize commenters with their username instead of their UUID. This is the only way to ensure that your permissions and ownerships are safeguarded while you change your username over time.

So, as you can see, there is quite some work ahead with this. I am not sure when I will have time to work on all this, but the fact that I have now, after thinking about it for several days, come up with a comprehensive strategy to make this work out at all is a huge progress for myself. There are still a couple of things I am scratching my head over but hope I will see the solution once I start working on it before I go bald. One challenge for example is to deal with individual databases upgrading themselves along with plugins to be UUID-based instead of username based and my code having to be flexible enough to deal with the transition without me closing down the whole system for some hours of testing each time.

 

IMPORTANT: Update Your Minecraft Password ASAP

CHANGE YOUR MINECRAFT PASSWORD – WHY

A recent exploit found in OpenSSL (an open-source security socket layer, meant to secure/encrypt internet traffic) called “Heartbleed“, made it possible for hackers to find and use passwords on systems using OpenSSL.

WAIT, MOJANG WAS HACKED?

No, Mojang was not hacked. Their servers are not vulnerable to the OpenSSL exploit, but the load balancers they use from Amazon were. As a precaution, it has been recommended that you update your Minecraft password, just to be sure.

Mojang said:

Due to an exploit in the OpenSSL software used by Amazon’s load balancing serive (which we use for most of our stuff) we were forced to temporary suspend all of our services. All systems are now back online, and the exploit has been fixed. There was no way to target specific users, but we can not guarantee that your information wasn’t compromised. Therefore we recommend everyone to change their Mojang/Minecraft account passwords.

WAIT – DO I CHANGE MY MINECRAFT PASSWORD, MOJANG PASSWORD, OR BOTH?

If you have not migrated your account, change your password at Minecraft.net.
If you have migrated your account, change your password at Mojang.com.

Uncovery.me never used the affected versions of OpenSSL, so nothing to do here.

Regardless of whether you have or have not migrated, it is crucial to change your password.

New feature: scheduled crashes!

I have calculated that the server has a severe crash about every half a year. It normally results in people losing a lot of inventory or parts of the map being reset. If we have a crash about every six month, the next one is due around May. In order to prevent these crashes to come as a surprise, I will schedule the next crash for the coming weekend and thus prevent one in May.

So we will delete around 50% of all inventories, reset some random lots and wipe about 30% of the Unc accounts on the server come this weekend. The % chance of something happening to you will increase by the level of annoyance you showed during the last 30% of chat multiplied with the time you have spent on the server.

In order to give a better service to the users, you can already now ask for refunds, which I will of course refuse. I am sure that this will reduce the annoyance and shock for the users in case their stuff is gone, increase reliability and general satisfaction with the server.

Today’s upgrades

Please see the latest upgrades from the voting system:

  • khyddinamaani (from CitizenDonatorPlus to ArchitectDonatorPlus)
  • Akium (from ArchitectDonatorPlus to DesignerDonatorPlus)

Congratz and thanks to all voters!

Old Courier emails imported!

I have imported all the old courier emails now into the new system. If you have sent an email or read an incoming one, I put it into your trashcan, otherwise it would flood the inbox when opening it.

Please check if there are messages missing. I am not sure I got the most recent backup since the system went down.

Courier system

I am still having issues re-enabling the courier system. It causes errors and I will have to track down the source of the issue by setting up a parallel server.

I am half tempted to write a custom messaging system, that one would then work via website and commands and give up the enderman delivery and reading it on maps. In case I go that far, I can still spawn a creeper next to people who send emails…

New opt-out Notifications channel

I created a new channel in the chat which is a Notifications channel for less important announcements. This will include the Voting Lottery announcements and also newly introduced announcements for new forum posts and replies. The new channel has the same chat color as the “off-topic” channel, yellow.New blog posts will be announced now in the Announcement channel by default.

New “online time” calculation in user list

I tried around how to best represent if a user is an active one or not and came to the solution to display a user’s average minute since he joined the server on the user list. Since we only record the online time since November 2013, any user who joined before that is only measured since that time of course. If you have been absent for the last week, this time is also counted so absence decreases your online time.

I found it quite interesting to see how active some of the new users are, and I think this number should also play a role in the promotions decisions.

Kingdom map finished!

The generation of 1280 new lots in the kingdom is now finished. We have 320 new main lots and tons of space to do new stuff now. Since I still need some time to find good locations for the kingdom builds, please understand that I cannot give out any new lots in the kingdom for now. Once I identified the lots I need to take, the new lot function will be available again. For now, all maintenance functions of the lot manager for existing lots has been re-enabled.

You can see the expanded kingdom on the 2D and 3D map. The only concern is that the file for the 2D map is now more than 6MB large. I will see if there is anything to improve that. I am not sure if splitting the map into smaller files will make a big difference. I would speed up loading of parts, but in the end you still have to download 6MB.

This was a major headache by the way. While I did map enlargements in the past, I never enlarged a kingdom world with street lots before. I now have a fully functionint automated code for that, so that’s good. Once we expand the draftlands accordingly, this will come in handy.

Kingdom Map expansion ongoing, IRC down

First of all, I have made the first big step in the kingdom map expansion: I have more than doubled the lots. We have now instead of 16×16 24×24 lots. The old lots have been renamed, user access and flags have been transferred. If you find any error in the lots, please let me know ASAP.

Right now, the new lots are being shown on the 2D map, but the 2D image will not properly align with them.

Then current step is to expand the current kingdom to these dimensions. This happens just now with the current mapper (since it’s the current minecraft version). We need to do this since the lot reset only works if there is actually content in the target location. Once that is finished, I will reset the new lots to the mint-condition 1.3.1 lots and the breaks in the map between the new world structure and old structure will disappear.

Until everything is finished, the kingdom lots will not be available in the lot manager.

Once the reset is done, I will occupy the lots that are required for the city move and then release the remaining for purchase in the lot manager.

In unrelated news, the IRC service is down. The IRC server we are using had some issues and made the IRC client crash and took the minecraft server down with it… So I disabled that now until the IRC server is back to normal.