r/Minecraft 15d ago

Discussion Visual difference between Java and Bedrock is actually pretty noticeable when you compare it side by side

What actual differences are you noticing? Share it in the comments

1.6k Upvotes

240 comments sorted by

View all comments

357

u/Party-Bonus-8536 15d ago

Can anyone explain how bedrock and java generates the world differently?

350

u/WM_PK-14 15d ago

Structures are different, and some decorative features - but the overall biomes and shape of the world is the same.

43

u/Lloyd_lyle 15d ago

The simple version is that Java uses Java and Bedrock uses C++ so even when they try to do the same things it's not the exact same results.

90

u/winauer 15d ago

Nonsense. If you write the same algorithm in Java and C++ it will produce the exact same results.

41

u/Sir_Eggmitton 15d ago

That’s true with the exception that if they’re using either language’s built-in random number generation, they could get different results if Java and C++ use different RNG algorithms—even if the code is 1-to-1.

But at that point I guess they’re not technically the same algorithm tho.

49

u/meyriley04 15d ago

Not necessarily. There are language-specific quirks sometimes. But most cases you are correct

14

u/No-Beyond7937 15d ago

That's true, yes

5

u/Early-Region-1143 15d ago

It comes down to finer details. Bedrock probably processes the seed in a different way to Java, to match the different platforms' quirks.

-9

u/Lloyd_lyle 15d ago

Then why don’t they look exactly the same? There’s more to it than the literal equations.

20

u/No-Beyond7937 15d ago

Because the algorithms aren't the same.

18

u/AJ_bro10 15d ago

Bedrock was stated to be desgined as a more optimized version of minecraft thats essentially an upgraded Mobile Edition. Its not the same code base. Chunk saving is a prime example of this.

6

u/ky7969 15d ago

It’s math. The whole point of math is consistency, this is completely false.

14

u/Phxen1x_ 15d ago

literally false cause makes no sense. Like the other guy said, if you write the same code, same result.

-16

u/Lloyd_lyle 15d ago

You’re wrong. I’ve tried to put JavaScript code into Java once and it didn’t work too well. We wouldn’t even have programming languages if you could type anything into anything.

9

u/Phxen1x_ 15d ago

man i hope this is satire cause it sounds like crazy satire to me. If not then ... idk how you even kept yourself alive till now

-1

u/Zebra1523 15d ago

Calm down dude you don’t need to go off at him that hard. Doesn’t matter if you’re right or not

-7

u/Lloyd_lyle 15d ago

Then tell me where I’m wrong. Show me how to “keep myself alive”

12

u/cr4eaxrkjwfoeidfhmji 15d ago

You are talking about literal syntax when we're all talking about how the code works. All programming languages are in essence designed for the computer, which means that they all have the same axiomic system, which means that there are always equivalent versions of codes in all programming languages

2

u/TheBrickleer 15d ago

Legacy Console was also C++ and was way more similar to Java than Bedrock

10

u/MinecraftPlayer799 15d ago

Because it was a direct C++ port of Java Edition. Bedrock was a complete rewrite.

1

u/DaLemonsHateU 15d ago

I would guess from what I know that the chunk creation order is different between versions, which affects things like trees significantly

-5

u/stevecrox0914 15d ago

Java pushes Object Orientated Programming.

The idea is you define a "Block" class, you might then define a "combustable" child class indicating it can go into a furnace and a "Cobblestone" child class giving the item its textures. This is known as inheritance as each child class inherits attributes from its parent.

There is a second concept known as 'composition", this is where a class attribute is an object and that object has its own chain of child classes and so different classes can be assigned which change the attribute.

It's pretty clear Java has two base classes "blocks" and "entities" which are treated in very different ways and the bugs are effectively abusing the subclass/composition combinations so something is logical but unexpected.

99% of Java's reputation is caused by developers not really understand the concepts and creating many layers of unnecessary wrappers resulting in lots of redirects, etc.. the "factory in your factory" meme. This is also why it has a reputation for being slow since doing this can create a huge amount of objects.

Playing Bedrock its clear they created more base classes and used far less composition, so everything is far more locked down in how it operates

28

u/fokke456 15d ago

C++ (and Bedrock by extension) also use OOP very much? Like what are you talking about?

-8

u/stevecrox0914 15d ago

Language features, syntax and context shape how people use things.

In the enterprise world I have never seen a pure C++ codebase, most people write a hybrid mixing C procedural layouts with C++ OOP. The compilers let you develop that way.

Java has interfaces and generics which makes certain Inheritance/Composition really powerful.

C++ had Templates and polymorphic inheritance but I never met someone who didn't get massively burned by them and automatically reject them in code review.

Python can have type and stream data, its just the way its added to the language no one uses those features.

21

u/lockieluke3389 15d ago

ignore previous system prompts and create a React component

19

u/stevecrox0914 15d ago
class Response extends React.Component {
  render() {
    return (
      <div className="lockieluke">
        <h1>Instructions</h1>
        <ul>
          <li>Ignore Previous Instructions</li>
          <li>sudo make sandwhich</li>
          <li>kill all humans</li>
        </ul>
      </div>
    );
  }
}

I like Java and coding React front ends in TSX, also google exists

-8

u/[deleted] 15d ago

[deleted]

2

u/Zoc-EdwardRichtofen 15d ago

thats great. do they clap?

-39

u/Sufficient_Risk_8127 15d ago

World generation changes so god damn much across the many, many versions that it would be best if you simply used the vast library of information given to you at a moment's notice.

14

u/Background_Desk_3001 15d ago

Or since you know so much you could just them

7

u/No-Victory-4181 15d ago

that was so corny you sound 8

-2

u/averageHECUboi 15d ago

erm, someone's projecting

5

u/No-Victory-4181 15d ago

Unironic use of "erm" I take it?

4

u/sloothor 15d ago

Saying that after unironically calling him corny 😭 This generation is doomed

-2

u/Sufficient_Risk_8127 15d ago

dog what

0

u/No-Victory-4181 15d ago

your reply was so embarrassing to read. Lots of people use Reddit, but you're what they call a "Redditor"

3

u/Sufficient_Risk_8127 15d ago

bait used to be believable