Skip to main content

For playing Minecraft Bedrock on Linux, stop using Bedrock Launcher. Use Waydroid instead.

Categories   Linux Gaming on Linux
Tags   Linux Minecraft Bedrock
Table of Contents

中文版

In this article I will discuss how to play Minecraft Bedrock Edition on Linux.

Minecraft Bedrock 1.20 on Linux. Shader: YSS. Seed: 4354585255707245098. Coords: 359, 82, -387

The “Linux” here includes: Ubuntu, Debian, Fedora, Arch Linux, Manjaro, openSUSE, Gentoo. ChromeOS IS NOT INCLUDED.

1. What is Minecraft Bedrock Edition?
#

Minecraft Bedrock Edition is a version launched after Mojang was acquired by Microsoft in 2015. It is different from the Java version of Minecraft, which is commonly known as the “PC version”. Bedrock Edition focuses on cross-platform play. In addition to the Windows version, Bedrock Edition also integrates the previous mobile version (Pocket Eidtion) and console version (Console Eidtion), and is named Bedrock Edition, making it a truly cross-platform version of Minecraft.

The world format, commands, servers, and mods (“Add-On”) of Bedrock Edition are all the same among various platforms. Users can freely choose to control players with touch, keyboard, and controllers. And players can connect to each other among various platforms. This is where Bedrock Edition outperforms Java Edition. However, the mod functions of Bedrock Edition are not as rich as Java Edition.

And although Bedrock Edition claims to be “cross-platform”, there are still no native versions for macOS and Linux.

2. Options for playing Minecraft Bedrock Edition on Linux
#

Since there are so many Minecraft Java Edition launchers for Linux, can we run Minecraft Bedrock Edition for Windows on Linux with XX Launchers ??

The answer is NO.

Because Minecraft Bedrock Edition is written in C++ and packaged in UWP format, there is no way to rely on the “JVM” to achieve cross-platform like Minecraft Java Edition. And, forget about Wine. It will not work for UWP applications.

In addition to playing Bedrock in a Windows virtual machine, we still have other choice: playing Android version of Minecraft Bedrock Edition.

The functions of Android version are the same as those of Windows Bedrock Edition. The biggest difference is that there is no RTX ray tracing and the rendering distance is shorter. But this is not a big problem, the Android version still has many cool Render Dragon shaders that can meet the needs of players who like eye-candy visual effects.

In addition, the Android Bedrock Edition APK supports x86 and ARM architectures, so you can also play Minecraft Bedrock Edition through the Android emulator on ARM-based SBC (such as Raspberry Pi).


I used to use Minecraft Bedrock Launcher developed by Mr. Arm, which supports macOS and Linux, for playing Minecraft Bedrock Edition on Linux. But why wouldn’t I recommend it? It uses Anbox behind it. The Android version is too old, the game will crash inexplicably, and there are various unresolved bugs.

So I decided to use other Android emulator solutions.

Please go to Google Play to purchase Android Bedrock Edition first, and then refer to List of Android emulators for Linux, choose a solution that suits you.

I personally prefer “Waydroid”, which can take advantage of GPU acceleration (well, Nvidia GPU is not supported by Waydroid btw). The touch screen, keyboard, mouse, and game controller all work normally. You can login into Xbox accounts without any issues.

3. Where are the world file of Minecraft Bedrock Edition
#

In order to comply with Google Play policies, Minecraft Bedrock Edition (1.18 and later) placed its game data in /data/data/com.mojang.minecraftpe. This directory cannot be accessed without Root permissions.

You can install Minecraft Bedrock Edition Add-On with the extension of .mcpack.

However, it would be troublesome for players who want to manually install it.

In the case of Waydroid, files can be transferred using ADB.

  1. First go to the Minecraft game settings. Change the world storage location to external, so that the game data will be transferred from /data/data/com.mojang.minecraftpe to /sdcard/Android/data/com.mojang.minecraftpe

  2. Use the waydroid shell command to grant root permissions to access the files in this directory.

sudo waydroid shell ls /sdcard/Android/data/com.mojang.minecraftpe/files/games/com.mojang
  1. The Minecraft world directory is minecraftWorlds, the behavior pack dirctroy is behavior_packs, the resource pack dirctroy is resource_packs, and the skin pack dirctroy is skin_packs

  2. Go to Waydroid’s system settings → About the phone, check the IP address, it should start with 192.168...

  3. Connect ADB to Waydroid

adb connect IP address:5555
  1. Use the ADB command to push the MyWorld directory of the Minecraft world from the Linux host to the Download directory of Waydroid container, and then use the Waydroid Shell commands to move them to minecraftWorlds
adb push /home/user/Downloads/MyWorld /sdcard/Download/

sudo waydroid shell mv /sdcard/Download/MyWorld /sdcard/Android/data/com.mojang.minecraftpe/files/games/com.mojang/minecraftWorlds
  1. You can also pull the files in Waydroid to the host machine
sudo waydroid shell cp -r /sdcard/Android/data/com.mojang.minecraftpe/files/games/com.mojang/minecraftWorlds/MyWorld /sdcard/Download

adb pull /sdcard/Download/MyWorld /home/user/Downloads/

4. Multiplayer connection in Bedrock Edition
#

Multiplayer connections in Minecraft Bedrock Edition can make good use of Xbox account connections: as long as both parties are friends, they can enter each other’s worlds.

LAN connections may not work because Waydroid runs in its own subnet.

If you need to manage more people, use Bedrock Dedicated Server to set up a server.

Related

Running IBM SPSS Statistics 29 using Wine on Linux
Categories   Linux Linux Good Software
Tags   IBM SPSS Linux Wine
10+ Windows galgames that you can play on Linux (And native Linux galgames!)
Categories   Linux Gaming on Linux
Tags   Wine
ReDroid. Playing Android games in containers on Linux PC, with GPU Acclelration
Categories   Linux Virtual Machine and Container
Tags   Android Docker Linux

Leave a comment

Choose the comment system you like. Giscus for codes, Disqus for anonymous comments.

Please login to your Github account to leave a comment. You can post codes here for discussion. For images, please upload to Imgur and copy links. Your comments would be visible to everyone on Github Discussions.

This comment system is provided by Disqus, you may see forcing Disqus ADs on this page. Sometimes your comment may need to be reviewed, resulting in delayed display. Thank you for your understanding.