TL;DR Open a LAN game with a demo account, kick yourself out, join a self-hosted minecraft server. Spoof your player name to join with multiple demo accounts.
After seeing my kids watching YouTube Let’s Plays of Minecraft, I couldn’t help myself and purchased the game. It remind me a lot of playing with LEGO’s, so I needed to try it out by myself. Of course, it didn’t take long time till my kids found out that I have installed Minecraft, too.
Pirating the game is out of question. Using shady hacking clients that might be backdoored is also not an option. So how do I get hands on to five more Minecraft accounts for my kids?
Luckly, I found a solution to join a Minecraft server with a demo account. Usually demo accounts don’t have the multiplayer button in the main menu, but there is a nice trick to get into the multiplayer menu and join theoretically any Minecraft server.
This works only when the server parameter offline-mode are set to
true. In offline-mode Minecraft skips authentifications by Mojang. Unfortunately, that also means you can’t join mainstream Minecraft servers.
But hey, at least it doesn’t bring the risk of getting hacked or getting into trouble with the law. Primarly I am not interested to play online anyway. I just needed a solution to enjoy a nice LAN session of Minecraft with my kids without purchasing five new accounts.
- You need a Microsoft (or Mojang) account
- Minecraft server (ideally self-hosted. Tutorial coming soon)
netsedcommand line tool
Register with your Microsoft account on Minecraft.com. Download the latest Minecraft demo and login via your Microsoft account.
All we need to do after loading a demo game is, to open the Game Menu and click on
Open to LAN, active
Allow Cheates: ON and click
Start LAN World. By doing so we can use now server admin commands in the chat.
To spoof our username, we just need to find the right network packets that are send between us and the Minecraft server and manipulate the packet on-the-fly to change our username.
We can do it the fancy way like LifeOverflow did in his video1 or we follow the lazy method and replace every TCP packet that contains the word
Player with something else containing excatly six characters.
Fortunately the ASCII string
Player appears only once in the network stream.2 We can easly replace it with another unique six character string like
Hrobrn by using the command line tool
You can install
netsed via APT or your favorite package manager.
1 sudo apt install netsed -y
To start the spoofing process, open a terminal and type:
1 netsed tcp 12345 192.168.0.20 25565 s/Player/Hrobrn
netsed command we specify the Minecraft protocol with
tcp followed by the
12345as our local port. You can choose any port number as long you connect with your Minecraft client to the same port.
With the last part of the command
s/Player/Hrobrn, we apply the search and replace rule for netsed.
- no need to buy additional accounts
- not illegal, as long as you do not manipulate the binaries of mojang
- you are not limited to the demo world seed
- more than one demo account can join a minecraft server as long as everyone has unique (spoofed) usernames
- takes time to join the server and start playing
- skins are random (maybe workaround with datapacks)
- only works if server properties are set to offline-mode
- demo account might log you out after 90 min playtime (workaround with manipulating NBT file)
Minetest and the add-on MineClone2 are great open source and free alternatives. Meanwhile Mojang is trying hard to make version parity between the Java and Bedrock edition, Minetest natively supports crossplatform gaming and works even on Android phones.
No matter which platform you use, everyone can join the same server with his favorite operating system.