A rant on Mojang proposed Minecraft name change service

The other day saw an announcement on Mojang website about Minecraft 1.7.6 having support for Minecraft name changes, with the service itself being made available for use at a later time, presumably with 1.8.

Long rant ahead, so grab a cup of your favorite beverage, turn off your cell phone, sit comfy and let’s get started, shall we?

This is a very important announcement. Players that previously thought they’re stuck with strange or creepy names for their entire Minecraft life are no doubt doing a little happy dance right now. On the other hand this proposed change left server owners and service providers scratching their heads. Allow me to explain, there’s way more than meets the eye…

Ever since Minecraft has been introduced player names have been thought immutable. That once picked and bought from Mojang they can never be changed. Mojang itself has never provided as part of the authentication service another unique ID of any sort to uniquely identify players across services, across different sessions from same player and across different servers.

So the entire community that arose around Minecraft servers, and associated services, has been designed around this unique ID: player name. Databases use this player name to tie with their associated data. Plugins use it to provide functionality. Mojang own server implementation uses player name as part of the file name to store player inventory and other detail. Change the name and none of these bits and pieces of data can be found anymore. So far we’re talking about things happening on a single server.

However the issue is more complicated than that. If it were just about plugins across a single server or a group of servers part of the same group, one could simply make a password authentication plugin and be done with it. You’d have to type in a password when you log in to the server, no matter what name you’d be showing up with, and that’ll signal that you’re the same person. The password would then be the unique key, not the name.

Let’s now put this name change in a broader perspective. Player name is a unique key not only for plugins on same server, but for services spanning the entire Internet. Services that often have to work together to be able to provide the rich functionality we’ve come to expect nowadays will stop functioning when players will be able to change their name at will.

Buycraft takes your username and ties that to whatever perks you donate for. Then a completely separate entity, a server half a globe away asks Buycraft “what perks shall I give and whom?” If the Buycraft name and the server name don’t match, player doesn’t get said perks.

What about serial refunders? People that make a habit of refunding their payments. I’m not talking about legit issues or reasonable mistakes. No, I’m talking about people that routinely pay, get some perks or digital goods, refund then move on to the next server and do the same. And they do this to tens or in some cases hundreds of servers.

Buycraft tracks these people by… you guessed it: player name. It makes the names of serial refunders available to server owners so they can protect themselves against this threat, disallowing these players from buying from their store.

This is common practice with any financial institution or service outside Minecraft realm. Do enough shady chargebacks with goods you buy from brick and mortar stores or Interwebz and Paypal, your bank and in some cases even police will take a special interest in you.

Back to Minecraft. Player changes name? Clean slate, so they can start doing their thing again, scam another dozen servers until another name change is in order.

Same goes for global ban services such as MCBans that uses the player name as a global key across all Minecraft servers. Player changes name and from that moment on she has a clean slate since it no longer has a track record of past misdeeds. They’re no longer the griefer Joe, known across the entire community and not allowed even to join most servers. He’s new player Jane with no track record. She starts anew, griefing and disrupting the enjoyment for their own pleasure, until time comes for another name change.

This whole thing isn’t new. People learned to deal with this for ages. It’s the issue of identity change. If you’d done something pretty bad, or other reasons maybe legal maybe not, if you somehow can get a new identity you are a new person with a clean state. No track record of what you’ve been up to that moment in time.

However in real life, having a history of experience to draw upon, people have wizened up and instead on relying on names as unique keys they have used things like social security number or other form of unique ID issued by a central authority that is kept unchanged from the moment you’re born to the moment you die. You can change name, you can change address, you can change jobs, marry or divorce, this unique ID – like your DNA, fingerprints or retina blood vessel network – is always kept unchanged.

For Minecraft, until today, this unique ID has been player name.

In the past Mojang has been known for some less than stellar design or implementation decisions concerning the multiplayer aspect of the game. Things that are perfectly fine and even great in single player suddenly become major hurdles when you put together hundreds of players on the same server. Over time they have been corrected some of these, some still remain today. Client side inventories. Client side player position. Single thread. Server – client communication protocol. Just to name a few of them that worked really well on single player, but have proven major issues in multiplayer, especially when many players are packed together on a single server.

The gist of the matter is, back from inception Minecraft has never been thought as a hugely popular MMO but as a single player game. It’s been said already but bears repeating since this is the crux of this whole rant: design decisions that are perfectly fine in single player or when playing with a family member or three sometimes are not so great in the context of large servers.

Depending on how Mojang decides to implement this name change it can be one of them. If Mojang decides to simply allow players to change their unique ID – their name – at will, without providing another unique ID to track the player for the lifetime of their Minecraft life, things won’t be pretty. Server owners will undoubtedly adapt and find workarounds. But without a central unique ID issued by a central authority to replace the no longer unique player name, services that many have come to rely upon it will cease to function.

Now that we’ve seen the problem, it can be a useful design exercise to think ourselves of possible implementations. Challenged with the task of name change, how we’d go about to implement it? We can learn a lot from this exercise, and later draw upon what an established company has chosen to implement, compare with what we’ve come up with.

Here’s two of my own ideas. If you’re up to it, how you’d make this work yourself? Submit your ideas in the comments below, or on the forums. It’ll prove an amazing brainstorming session, and who knows? Maybe someday in future one of us may actually have to design and implement something like this.

The simplest way this can be made to work is keep the name unique as it is now. Don’t allow players to change it. Provide instead an additional field: the display name. The player name would be provided to backend services such as Buycraft and servers, and the display name would be shown in chat and to other players. Players can choose whatever display name they wish to be known as, while all the existing infrastructure of services surrounding multiplayer Minecraft works as is with minimal changes.

The second possible design choice I’ve been able to come up with is provide a unique hash ID. This is generated when someone buys an account at Mojang and acts pretty much the same way the social security number in real life. This never changes. Players can change their name, their skin or other attributes but never this unique hash. Mojang supplies this upon authentication to servers, service providers and other interested 3rd parties. While server plugins will require only minimal changes it is a bit more complicated to make work for service providers such as Buycraft. A SSL secured form hosted on Mojang servers will ask the player for their authentication details, and return the hash ID to the service provider similar perhaps on how Paypal and others work today.

I for one look very much forward to see Mojang design decisions. It’s a great learning experience. We won’t have to wait that long either. When they release 1.7.6 – sometime at the end of March from what they announced – we might be able to figure out how they went about in their implementation.

And no matter what they come up with, I’m sure server owners and service providers will adapt and make it work.

14 thoughts on “A rant on Mojang proposed Minecraft name change service

  1. Brazzie

    That was definitely long. Im not really sure what to think of it! Why Now? I’ve been playing for over a year with my name. Everyone knows me as Snazzie Brazzie!! I wouldn’t change that for anything.

    Reply
    1. Ladyblanche

      Brazzie, you dont have to change it if you don’t want to.

      My first thought on this was related to Steam accounts. Guess it’s the solution with the display name. On Steam you can change your name to whatever you like, whenever you want to. But there will always be track about as whom you used to play before. There would be this database with millions of profiles. One for each Minecraft account. Each player can add friends there. And even if those friends decide to change their names, they would still remain as your friends. So let’s say I would change my Minecraft name to Smurfeater. To see who I am, you would search for Smurfeater in that database. For now you would find two accounts related to that. A Smurfeater that has always been Smurfeater. And a Smurfeater that also played as Ladyblanche. But guess it would become difficult if there would be more people that used to play as Ladyblanche and play as Smurfeater now…

      Steam provides additional help with this. You can check in your history with which players u played in which game or with whom you are currently playing. But there would still be the problem with the former Ladyblanches that now play as Smurfeaters – if all of them play on the same server.

      There we have a unique player ID. It is like on Facebook or Steam. You can have a lot of people having the same name, but the ID is always different. Tricky thing would be now, to figure out which ID belongs to which person. But guess friendlists would be able to handle that.

      Maybe it could be like on Skype. You rename the people in your list. And no matter to what they change their name, you could always see to what you renamed them. Or maybe make this not as rename but as a sitenote. So you would add me to your friendlist and add the note “Ladyblanche, McSpacecraft” or something along these lines. Let’s say I would rename myself from Smurfeater to Bunnylover now. Then you would see a Bunnylover in your friendlist with the note you added. You would always know it’s me. Further if you have a look at my profile in the database you would see: “aha, that player has played as Ladyblanche and Smurfeater before”.

      Few more thoughts on the friendlists: It would suck if you add a bunch of people, add notes and then they kick you out of their friendlist and you lose track of what their current names are.
      Maybe you can add whoever you want to. But to see who is currently online and maybe even on which server, you both need to have added each other to your friendlists. So give everyone the possibility to keep track of player names, but only real friends the ability to have additional features of such a friendlist.

      Reply
  2. fireblast168

    Umm… As of 1.7.6 your NAME won’t be your unique ID, it will be a random string of letters and numbers from the videos I’ve watched about 1.8.

    Reply
  3. fireblast168

    For example, heatseker4’s Unique Entity ID is for my test world is (There are so many combos I’m guessing there will be more than 100 million different ones.): 4005cac1-a16a-45aa-9e72-7fb514335717

    Reply
    1. heatseeker0 Post author

      Do not make the confusion between entity IDs and player unique IDs. Entity IDs are unique on a single server, on a single session. If I restart the server it is possible you get a completely different entity id.

      Reply
  4. TheWizard

    I agree that the only way that this can truly be implemented in a way that the current tracking features work across servers is if a new field of “displayname” is added (would work similar to the /nick feature that some of them use now). The ‘real’ name would still be visible to the server staff and any rewards or punishments would apply to the account name and not the display name.

    On one hand, this will be great as kids (and strange adults) who have chosen names for their account that is considered “offensive” and therefore not allowed to play on certain servers as a result would now have a way to do so. However, I still see this as an extreme challenge to server owner/operators everywhere as players who take advantage of this name change feature just to grief and create havoc on servers are certain to try to do another name change and claim that they were ‘unfairly’ punished for something that they would now claim that they did not do. I also see this causing issues among players as some people will likely change their name similar enough to another player as to be confused with them and end up with a truly innocent person being blamed for actions not committed.

    Regardless of how it is implemented, we (the players) wish you the best and have faith that you find a way to handle this and also grant you the patience that you will need to deal with certain players who have none (patience) of their own.

    -Merlin

    Reply
  5. Ryandrew8

    See, Server side, Theres plugins and things such as /nick or /nickname that changes the Display Name of your profile On That Server . Why can’t mojang just set up a generic Nickname for the players, where as their profile name stays the same to keep all the plugins and servers in check. Like changing your character skins. They’re obviously trying to compensate with the upset ” rainbowswagyolo12345 ” ‘s who made a dumb name, and want it to be changed and are upset that they cannot do that. I see what heatseeker is saying regarding changes in SP that have an aftermath effect in MP. This change in the player database sounds like its more for MP than SP to begin with, as you don’t go by a name in Single Player mode.

    If Mojang has intentions of allowing name changes, im sure they’re planning to implement something to protect players profiles, and servers they have been banned from. Like mentioned, they may add a social security number or a profile ID to keep everything currently existing in check.

    Reply
  6. Drago18

    I agree with Wizard, while staff may be able to see who is who, what is going to stop someone from changing their name to “Drago18” or any other name and then going off causing havoc as if they were that person. Players would not be able to tell, and even if a mod said something later about it not being that person, a mod saying something doesn’t mean those that saw the havoc, also saw the message from the mod, hence the damage would already have been done. From what I’ve seen in chat and the drama that goes on sometimes. It’s not hard to beleive that someone would go and do this.

    Reply
  7. Fireblast168

    I have still been watching snapshot videos and instead if a name, the server will know you by you UUID, or Unique User ID, which is a string of random letters and numbers. Problem somewhat resolved.

    Reply
  8. InhibiedTube1804

    i have notice that the name services are messed up, i have been trying to make a count and by minecraft but no mater what name i type in says it is taken, even if i type in random letters.

    Reply
  9. fireblast168

    Commonly some people do make their names random letters, that is the reason name change is made, so they can actually make it something. I will probably change my name to Fireblast1-13 if I can get that low.

    Reply
  10. Carl_Ian_Voller

    Here is an idea if mojang does implement name changes:
    When you join the server, you must key a Customized name and password in order for the server to know who you are. If the server doesn’t recognise you, you must create a new account with a Customized name and password.

    Now talking about Buycraft:
    Instead of typing your username in Buycraft, you type in your Customized name in Buycraft. Then when an item is bought, the info is then sent to your Customized name. So when you next log in to the server and key in you Customized name and password, you will get your bought item.

    This is just a suggestion about if mojjang plan to implement name changes.

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.