Basically title, this thing with two editions of the game slows down development because they now have to write the same thing twice and it splits the userbase. They also don’t want to make Bedrock edition for Linux for some reason.
I suspect the real answer is because Microsoft wanted to monetize Minecraft in a way which was not possible with legacy sales. I bought minecraft back in alpha with the promise that I would get any and all updates and future editions for free with purchase. Microsoft legal saw that agreement and knew it was incompatible with their business goals. They knew that incorporating a microtransaction store would basically require unlimited currency for players like me who had purchased it long ago. So the “simple” answer was to re-implement the entire game without the legal encumbrance of the legacy purchases.
Basically this.
I do want to point out, they COULD do BE ethically. Remove the subscription option and take a cut for all mod sales, and let private server operators and Realms use purchased mods while continuing to not charge players. Then put a legal ToS condition that using Realms requires such servers be operated without profit. Watch people set up private servers and Realms for their friends and charge private servers for API access. Done deal.
Of course, somebody at Microsoft wasn’t satisfied with that. They wanted complete control.
Protips for preparing for a potential end of java in a way that at least forces M$ to do something actually productive:
- Don’t go quietly. Hold out if you are that determined to see Java continue.
- NEVER get the Marketplace pass in Bedrock. It’s a bad deal meant to cater to fleeting, fad-chasing players. It also locks you out of purchasing limited-time items like any cosmetics and cancelling the subscription still leaves you screwed for 30 days.
- If you’re a PC player, run a server or rent a Realm only if you don’t know anyone who has them and you can afford to. If you’re playing on Steam Deck or another Linux gamerdeck, do not host a local server, though Linux desktops are supported by the Minecraft Bedrock Dedicated Server software if you want to run one on a local, stationary setup.
- Always buy Add-Ons, never Worlds, and never ever via “Marketplace Pass”. They rotate out mods in the pass, so it means you don’t even own a license to use it, let alone own the information you download as would be preferred (but will sadly never happen under Bedrock). I don’t know wtf Microsoft’s idiots were thinking at first, but Worlds are both useless and now functionally obsolete.
- Avoid buying franchise “packs” and those sketchy “educational” sponsored content “adventures” exclusive to particular graphics cards. These are ultimately nothing more than an attempt to turn Minecraft into an advertizing medium like TV or social media, and support could end up dropped entirely for licensing reasons. Individual cosmetics appear to be an exception to this, as of April 2025.
My solution is: no, I will not buy bedrock. I got it for free on xbox gamepass but only my kid plays that and I dont let him use money on microtransactions. Also I wont buy any extensions to my gamepass subscription. When that’s done, it’s done.
At this point, micro transactions for cosmetics are like candy. Kids will resent you and the values you try to impose if it makes them less able to participate in group activities. Restricting it to an allowance makes sense, disallowing it does not. I say this as someone who was banned from playing any video games as a kid for bullshit reasons.
There’s a reason that, when people realized smoking was toxic, they petitioned governments to ban them in increasing amounts and thus eventually de-popularize tobacco, rather than try to get kids to not smoke. If all your friends are allowed to, fuck whatever the reason is that you can’t.
Probably because of legacy issues, such as the modding community, java players becoming vehemently against switching to Bedrock because of issues such as:
- No built-in way to select version
- No modding, like at Java
- Microtransaction
- etc.
Also, game breaking bugs
Bugs seem gone, and you can make sideloadable mods for Minecraft. The issue is that many players just hate Windows (and tbf M$ wants too much if they think it shouldn’t be on Linux) and many others are long time fans of mods that can’t be replicated for legal reasons (e.g. Mystcraft) or who are not financially able to partake in a majority-paid modding experience.
r/BugrockMoment’s post frequency has not gone down, so all of the worst bugs, and the underlying massive problems in the code base, are still there
Well … BE is just a rewrite in C++. But a bad and inflexible one, as we see, so it’s very good that we have JE. Lets see for how long, not because discontinuing it would be good for users, but would grant M$ much more control and direct power.
We should just rewrite it on Rust. We can start with writing a graphics renderer from scratch.
Because of the modding and server software community. It’s basically non-existent on Bedrock. Also, Java is much easier to get into as a programming language for beginners.
I wouldn’t mind if they just give us a final Java edition version that has ray tracing support (the only thing I love about bedrock edition, such fancy shaders).
Everything else can be done with mods, and we could finally settle on one version instead of rewriting all mods over and over again.
TBH, Minecraft development has always been extremely conservative. Even basic “hard” features like a modding API, cubic chunks, LoDs or an optimized renderer were too extensive to do.
Bedrock is basically Microsoft sicking a whole team onto a C++ rewrite for their business purposes, not Mojang’s core devs deciding to do it.
This is not bad, per se. Their careful, slow direction stopped JE from getting enshittified, bloated, buggy, things like that. But it’s been kinda frustrating, too, given Minecraft’s enormous user base.
Microsoft definitely has enough funds to rewrite java edition in C++. Would it be possible to ensure mod compatibility tho?
Would it be possible to ensure mod compatibility tho?
No. That’s the whole point of Java, it’s quite hackable.
It doesn’t need a rewrite TBH, it just needs a little optimization. Heck, a few performance critical components can be written in C++ or whatever within the Java code.
No, the Java version runs within the JVM and the C++ version would run via native code. That’s effectively like having something work on an ARM processor and an x86 processor at the same time.
They both could be modded, but it’s harder to mod C++ because the optimization phase is ahead of time. Minecraft modding is in part an accident because the optimization phase happens during runtime within the JVM … that means the binary “.jar” files align much more closely with the code mojang wrote … where as an “.exe” would be radically changed.
C++ modding would also be more difficult because it’s harder to preserve stability in C++. In the JVM, basically the only way the program crashes is if an exception goes uncaught or the programmer explicitly asks the program to termite (which never happens). In C++ there are still exceptions but there are a whole lot of things that are exceptions in Java that aren’t in C++ … so you can’t just fence off the modding API cleanly and say “if an exception is thrown while running this mod keep going.”
Those two reasons are the major reasons that games pick Lua over native C++ based mods (that and you can secure Lua and prevent it from doing anything it wants … Java and C++ mods can do anything they want, which is part of why the Minecraft modding scene is so good; if you want to connect to a database for administrative purposes, you can write that mod server side and have your database of block changes to find griefers, your plot database to protect plots, your store database to provide shops, etc).
TIL! Thanks for the explanation. What if they rewrote it in Lua :P
You would get 3 FPS 🙂
It’s a good question. Really the only thing that would have been completely broken if moving to a new version are game mods, which are written in Java. Everything else could be converted to work with a new C++ based version.
Though doing so would result in a lot of new bugs, systems would have different behavior leading to broken mob farms and redstone. I think this would be the main reason. Keep Java around until the Bedrock Edition could handle these worlds with minimal issues.
However, Bedrock involved into a very corporate product. Microtransactions, ads, etc. Java Edition players would be angry if they were forced to move to this version.
Another factor is that Microsoft really doesn’t support Linux and MacOS systems. They likely didn’t want to add support for them in Bedrock Edition.
Bedrock does have a Linux version tho. The android one. There’s programs that can extract it and run it on desktop Linux systems if you buy a license for the apk on Google Play.
I mean by that logic, Mac would also have Bedrock Edition by using a VM or WINE.
But you know that’s not what people mean, when people say Linux they don’t mean Android and vice versa