Minecraft – Consistently Unable To Connect To Minecraft (Login, Local LAN Server)

minecraft-java-edition

My kids have recently started enjoying Minecraft Pocket Edition, and it's a lot of fun to play with them. Of course, being hosted on a phone, the world isn't exactly persistent. We pretty much have a day or two to build things and then we start over. So I figured I'd look into setting up a proper local Minecraft server that we can play from actual computers (it's my understanding Pocket Edition can't use a proper server).

Understand that I have every intention of buying Minecraft, provided that it actually works…

The first thing I did was set up a server on my Linux box. Following the wiki, I set up a server on my Linux box (and ended up using one of the control scripts available as well). All appeared to be working well from that end, but that's just on the command line so far.

On my Mac I've downloaded Minecraft 1.5.1. When launching, it asked me for a login. So I registered an account. However, even though I can login just fine on the website, the game client always rejects the login. After a while (most of the day), the "Play Offline" option became available anyway. So, on my Mac at least, I'm still able to play offline and successfully connect to the LAN server and play the game.

So I went about trying the same thing on a couple of Windows PCs. (One running XP, one running 7, one running 8.) All of them exhibit the same "Login Failed" error consistently. One of them, after a while, allowed me to "Play Offline." I can play single-player, but attempting to connect to the LAN server results in a Java socket exception. The other two PCs I only began testing recently, so the "after a while" for "Play Offline" hasn't elapsed yet.

I've found a lot of discussions online (forums, YouTube videos, etc.) which address various underlying causes of the failed login. Some claim that all one needs to do is change one's password on the website, but that didn't make a difference in my case. Others suggest that it's a firewall problem, but I don't believe that to be the case this time either. It happens on both Windows and Mac here, and I can confirm that the Windows box used for initial testing inside my LAN has the Windows Firewall disabled entirely.

This seems to be an awful lot of trouble for what is a massively popular game. Is this normal? So, to summarize, my questions are:

  1. Why does my login always fail?
  2. How can I resolve that socket exception?

Ultimately I'm just looking to have a successful end-to-end run of the game. Again, I'll gladly buy it if it actually works for me. (Buying a copy for my daughter would make for a great reward for recent good behavior on her part, actually.)

Best Answer

1. Login failure

The login is failing because you haven't bought Minecraft for those accounts. When you buy Minecraft it will be listed as one of your games in your account when you log in on Mojang.com, but until then you don't have a Minecraft login, you just have a login to a website that doesn't do anything except tell you that you haven't bought any games to use it with yet. You can still play in offline mode, since Mojang is not so obtuse as to require you be always-online in order to play Minecraft, unlike some other game publishers. However...

2. Server connection failure

When you connect to a server it will check if your account has a Minecraft registration too, and will drop the connection if not. So there are two times your login is checked for Minecraft access: once when you start the game, and once when you start multiplayer.

Fixing the server connection

The server's behaviour can be modified by editing server.properties and setting the line:

online-mode=true

to false instead. The players wanting to connect then pick a name to use consistently (since the server won't enforce identities to match what it has saved in its world files) and "try" to log into the game with that, let it fail, then play offline. Since the server is set to offline mode too, it will allow them to connect under that name.

The problem with this is that anyone can connect – make sure that the server isn't exposed to the internet, and the worst of the complications will be avoided.

The more likely problem though is that you'll have a bit of a headache migrating the kids' work once they have full accounts, since it's likely that the names they pick won't be available to choose once Minecraft is added to the Mojang account (which is when you can pick an official profile name for use in Minecraft). If there are name changes, then you'll have to either walk the child through the idea of losing their inventory and location on the server (blocks they placed will still be there), or you'll have to fiddle with NBT editors to transfer the inventory and location from the old name to the new one in the server's save files. Not hard, either one, but a stumbling block to be aware of.


The real solution here is to register a Mojang account for each child and purchase Minecraft for each account. I understand the desire to test it all out first, but if they already like Minecraft in single player, there aren't really any surprises that come with multiplayer that should change their or your mind. The advantage here is:

  • You'll immediately get the names that they'll be sticking with (consult and choose wisely, for children are fickle!) and can avoid identity issues in the server's save files.

  • You'll be able to set custom skins for their avatars, which children inordinately enjoy, in my experience. These are kinda nice in single player, but since they're readily visible in multiplayer they become more relevant when playing with others.

  • Fewer steps in logging in and connecting to multiplayer where mistakes could happen (a registered account can be remembered with it's password, making logins one-click), which for younger kids can be a bit of a headache-saver for you.

My kid has had an account for a year or so now and loves playing with other people, even if it's only to make random block stacks and randomly-enchanted gear in Creative mode. But then, that's 5-year-olds for you.