The bedrock lineage is microsoft's attempt at microsoftifying minecraft. The team behind bedrock are responsible for showing the world the supremacy of DirectX.
Bedrock is far behind on features and is far buggier compared to java edition. A ground up C++ rewrite is noble beginnings. Unfortunately time has shown that they only planned to get it to an MVP necessary for some gross monetization tactics targeting children and not really a genuine interest in improving the tech, growing fandom goodwill, or creating new art.
Because most mods take advantage of Java capabilities, so JavaScript extension points are not as interesting.
However the C++ version has a reason to exist, sadly Java never established itself for gaming outside desktops and J2ME/Android.
One could argue about AOT, but those are not widely adopted, CodenameONE, RobotVM.
You could run java literally anywhere it matters with not too much effort, but ios store terms would never allow for mods anyway (neither would ps/xbox/ninty store probably), so you could just as well redirect effort to optimize for platform specific audiences, AKA in this case kids wielding their parents' credit card.
Neither do game consoles.
You should check out Codename Ones recent gaming related features...
Which was my last sentence.
The issue isn't that it isn't there, it is mindshare among game developers, especially when it isn't part of the official SDK.
This isn't unique to Java, and that is why outside indie games, it is always the same languages that get used among all major studios.
Sure and I don't argue that. But it also wasn't fully there. This past couple of weeks Codename One introduced some big missing pieces:
* Level builder/game designer * Proper 3d that works natively everywhere (direct 3d on windows, metal on iOS/Mac) * Support for native win32, Linux and mac - real native with no JVM, 5mb binary * Native performance for some edge cases (low level SIMD API etc.)
You're right that mindshare is a huge part, but there were also many important missing pieces especially on the deployment front. I think that with good tooling and a royalty free pitch this might open some doors that were previously closed to Java.
Getting to major studios would be an uphill battle but since they acquire indie studios the path goes through there.
[dead]
[dead]
Another thing to note is that Mojang had already commissioned a C++ port of Minecraft for the console versions, which they then abandoned in favor of Bedrock. The original console port ran better, was less buggy, and had a nicer UI for controllers than Bedrock. Bedrock is basically an extension of Minecraft Pocket Edition (the smartphone port of Minecraft) so I imagine that they shifted to Bedrock so they didn't have to pay to implement the same features on Java, console, and Pocket Edition whenever they updated the game. The console version was developed by an external contractor, which is probably why they chose to give that up instead of Pocket Edition.
"Bedrock is basically an extension of Minecraft Pocket Edition "
This seems crazy. When MS bought Mojang, why didn't they start with the console port for Bedrock? Even if some other contractor, it would be a starting point better than the phone version?
because the legacy console ports where very tied to the platforms they ran on
This isn't really true, the code works like most cross platform codebases where most of the code is common and then there's a bunch of platform-specific backends that handle graphics, sound, input, etc. They used the same gameplay code for Xbox 360, Playstation 3, Playstation Vita, Xbox One, Playstation 4, Wii U, and Switch, so clearly there's not really much keeping it stuck to a single platform. A recent leak of the legacy console source code revealed that they also had an internal Windows port to make development easier, although you still need a controller to play.
Ah, okay. I didn't know that
As for the internal windows port, that's how most console development is done nowadays. Gamefreak (the pokemon people) does build of their games for PC which is neat considering how different the switch is compared to the differences between playstation/xbox and pc (those are just amd cpus and gpus on the inside, whereas the switch uses some nvidia soc)
[dead]
The defining aspect of Bedrock is C++, not DirectX. Bedrock runs on numerous platforms where DirectX isn't available.
Minecraft isn't exactly be the type of game to showcase a 3D API's supremacy.
>Minecraft isn't exactly be the type of game to showcase a 3D API's supremacy.
Nvidia did exactly this...
https://www.nvidia.com/en-us/geforce/campaigns/minecraft-wit...
I was under the impression it was because Java wouldn’t work on mobile devices. Is that not the case?
It started with that, yes, with Pocket Edition, but then that codebase got used for the console editions. I guess the temptation to monetise was too strong, and monetising Java was probably a lot harder and would spark a lot more outrage.
The Modded Minecraft community is basically all Java, and yeah, I think the Microsoft team on this have done a good job, but given how much awesome stuff modders give away a monetisation gambit is going to bring loads of ire for relatively small gain. "Better Than Wolves" is an entire mod which exists because one solo was angry about Wolves being added to Minecraft and they were like "I can do better than that" and of course the only way to show that you're serious was to uh, make a mod which is better than the wolves. IIRC it's a mechanical power system, water wheels, wind mills, gears and then simple machines to connect.
When I was 15 I ported Minecraft Java beta 1.2 to android.
There is an unofficial mobile port of Java edition, so no
https://github.com/AngelAuraMC/Amethyst-Android
Unfortunately being technically possible is only half the story. If it won't pass iOS App Store review it isn't a viable strategy.
[dead]
Probably just iOS since Apple bans JIT compilers other than their own.
And then note the curiosity of how microsoft blocks bedrock from running on macos, for some reason.
Consoles ban JITs too.
I don't think there's much chance Sony or Nintendo would have blocked the publishing of a Java version of Minecraft, if that had been on offer in place of Bedrock.
The rules are always flexible for huge games, especially when they'd otherwise be an exclusive for a competitor.
Almost is if an iphone is a little console.
Ignoring that, https://pojavlauncher.app/ supports iOS too.
FYI, PojavLauncher has been succeeded by https://github.com/AngelAuraMC.
IIRC The Android version came out pre-MS acquisition
Bedrock has a larger player base, the monetization seems to have worked. Existing Java players have not been put out (except the MS account thing).
MS didn't make the best decision, but their decisions have been good enough.
> Bedrock is far behind on features and is far buggier compared to java edition.
But does allow you render distances and frame rates that are impossible with the stock Java game (and can still be tricky even with mods.)
My experience has been that unless you are using the basic graphics options of Bedrock it performs worse at the same render distance, and even with basic graphics the perf is not much better. With Java version getting Vulkan rendering I suspect it'll out perform bedrock even without mods.
Not to mention bedrocks "improved" graphics look like trash compared to the shaders available for modded Java.
... at the cost of reducing the world update range, simplifying some of the mechanics and disallowing the kind of modding you can do on java.
This is actually one of the weirder things. The Java edition is objectively better from a technical player's perspective.
It's simple. Microsoft the new owner has no idea what Minecraft is about.
Or at least the subset of Minecraft that I play: complex builds and automated farms done in survival not creative. At that level the combat they keep adding to is ... just getting in the way of my building.
I think the problem is that Minecraft caters to a huge range of tastes. I fully agree with you, I’d much rather have more options for automation and building fun machinery but my son is deeply into the PvP side of things where the new combat options are hugely appealing, and lead to new ways of playing the game. That’s barely scratching the surface, you’ve also got the speed runners, the boat racers, the people using it as a place to shoot weird films, the drop map obsessives, and the speed bridgers competing to bridge from one point to another as fast as possible. It’s almost impossible to accommodate everyone all the time.
> Microsoft the new owner has no idea what Minecraft is about.
They've had 12 years to figure it out[0]. Now sadly they've spent those 12 years working out how best to milk every last microtransaction and merchandising cent out of the property rather than actually listening to anyone and improving the game(s) but whomst among us could have predicted that outcome?!
[0] https://www.theguardian.com/technology/2014/sep/15/microsoft...
Do they have MTX in Java yet? I haven't played in like 2 years.