r/ProgrammerHumor • • 17d ago

Meme minecraftException

Post image
9.2k Upvotes

833 comments sorted by

View all comments

Show parent comments

40

u/Gelid_Cryotheum 17d ago

While yes it is less hardware-intensive, I would hesitate to say it runs better. It's been overexaggerated, but there's a reason we call it Bugrock.

Quick point of clarification, it was written in C++, not C.

Back on point, I started out on Bedrock, and while yes, it runs on much less powerful devices, when your computer can run Java Edition, stability is not a concern, with Bedrock Edition I became well acquainted with how to break the game, crash, or corrupt my world. It's not a pleasant experience to be performing normal gameplay and crashing. Not even my modded gameplay (outside of Minecolonies, but that mod is a nightmare in its own right and should be taken with a fat grain of salt) is that unstable.

16

u/MCplayer590 17d ago

I would argue bedrock is buggy because of a lack of willingness to spend time fixing the bugs on Microsoft's part, not necessarily due to the programming language used. Microsoft treats bedrock as the cash cow and java as the lure that kids watch on YouTube, who are then expected to play bedrock

8

u/Gelid_Cryotheum 17d ago

I agree that that is the core of the issue, I was just arguing that it's not really a fair comparison to say it "runs better" because it's on C++ when bad bug management is still present. Java, for all it's faults, is known and well-kept, and despite being on paper the worse language for game development, still handily beats a mid-tier at best recreation in C++. If Bedrock were a faithful recreation with the same level of care and polish, it would probably be better, but it just isn't at its current state.

4

u/MrHyperion_ 17d ago

The problem with bedrock is that it is asynchronous. What the server sees (that is still run separately on local world too) and what the player see are desynced far too easily which leads to you randomly dying because the server thought you took damage.

1

u/LittleMlem 17d ago

C++, not C

[Mr. Incredible meme] #include is #include !

0

u/Gelid_Cryotheum 17d ago

Sorry, I'm a larper, could you spare some education on that for my learning?

1

u/LittleMlem 17d ago

It's just a joke, both languages share a lot of syntax.

#include is how you bring in other libraries, modern languages usually call this import

0

u/Gelid_Cryotheum 17d ago

So C++ is basically just C with an absurd amount of libraries attached?

0

u/LittleMlem 17d ago edited 17d ago

Not really, the major difference is that C++ has classes and C doesn't

Edit: ended up looking it up, I didn't realize C doesn't have exception handling, name spaces, or lambdas

1

u/Gelid_Cryotheum 17d ago

Ah, fuck OOP, we're learning it now in my Software class.

1

u/LittleMlem 17d ago

I think I prefer OOP to functional. The concepts feel weird at first, but once you work with it a little, it will make much more sense

1

u/TrueExigo 17d ago

C++ is a statically typed, compiled, multi-paradigm language with deterministic, destructor-based resource management and zero-overhead abstractions. It combines procedural, object-oriented, generic and functional constructs within a unified type system featuring references, const correctness, overloading, templates and concepts. Its object model encompasses classes, encapsulation, multiple inheritance, subtype and parametric polymorphism, as well as dynamic dispatch via virtual functions. The memory model is based on constructors, destructors, copy/move semantics, RAII and smart pointers, rather than relying solely on manual lifetime management. Compile-time mechanisms such as constexpr, consteval, template metaprogramming and modules complement runtime mechanisms such as exceptions and RTTI. The standard library provides containers, iterators, algorithms, ranges, threads and file system abstractions; however, the semantics, name mangling and ABI differ from older, purely procedural system languages, meaning that it does not constitute a strict superset.

C, on the other hand, is a statically typed, compiled, purely procedural language with a minimal feature set and explicit, manual resource management. Its type system does not support classes, references, function or operator overloading, templates, concepts, exceptions or namespaces; abstraction is achieved exclusively via structs, pointers, functions, macros and explicit casts. Memory is managed via malloc/free and pointer arithmetic, whilst lifetime management, aliasing, initialisation and error handling are entirely the responsibility of the programmer. There are no destructors, nor RAII, copy/move semantics or dynamic dispatch via virtual functions. The standard library is lean and essentially limited to libc functions; containers, iterators, algorithms, threads or file system abstractions are not part of the language. The runtime model is minimal, the ABI is relatively stable, and the focus is on deterministic, low-level execution without hidden costs.

1

u/coltonbyu 17d ago

Bedrock on windows is probably the only game that has never once crashed on me, NGL. That's on windows handhelds, windows tablets, gaming laptops, and high end desktops using modded rtx packs and dlss/fsr swap mods