0
\$\begingroup\$

How does chunkbase biome finder generates map base on seed? I was curious if chunkbase knows the secret formula for generating the map? Or it uses other math formulas such as scaling, mapping etc...

Here's my main point: If I generate a map in minecraft and grab that minecraft seed. If I place that minecraft seed in biome finder, It also generates the same world that minecraft generated. If I place the coords in that biome finder, it also shows me the correct position in minecraft world.

How can you possibly generate a world similarly to minecraft without knowing the secret formula? Is this possible?

Here is the site https://chunkbase.com/apps/biome-finder

This is my first question and I'm not a real game dev(I just want you to know). If you want me to remove this question, just tell me.

\$\endgroup\$
4
  • 1
    \$\begingroup\$ Is your real question "How can I implement this algorithm?" then? Asking via a proxy ("how did other person do it?") rarely gets useful answers. What is it you're trying to do / what problem are you trying to solve? We might be able to edit your question to get at what you actually need more precisely. \$\endgroup\$
    – DMGregory
    Commented Jun 1, 2019 at 13:29
  • \$\begingroup\$ I want to implement the algorithm because I'll making a web app for viewing minecraft worlds. (Locally) \$\endgroup\$
    – MMJM
    Commented Jun 1, 2019 at 13:32
  • 1
    \$\begingroup\$ Then first, edit your question to ask about your real problem: viewing Minecraft worlds. If you want to view chunks the player has explored/modified, you might not need the generator at all, and can instead visualize the game's saved chunk data. If you want to view never-before-seen chunks, then you should start by researching available sources - even just searching "Minecraft Algorithm" turns up lots of leads, including code samples. Include in your question details of your research and how you've tried applying it, and where you're stuck \$\endgroup\$
    – DMGregory
    Commented Jun 1, 2019 at 15:08
  • \$\begingroup\$ I'm voting to close this question as off-topic because it is not about game development \$\endgroup\$
    – Philipp
    Commented Jun 1, 2019 at 17:34

1 Answer 1

1
\$\begingroup\$

It can do a variety of things to achieve this.

You can either interface the official server using a custom-made wrapper, that dumbs it down to a world generator, throwing any physics and game updates out of the window, then send the data to the client running on the website using websockets or AJAX. This is legal, as far as I'm aware, as the server is treated like a black box. The original Bukkit server did this and just stepped in at points to do any plugin-related modifications.

Or you can implement everything in JavaScript, including the random generator Java uses, the exact noise algorithm the game relies on and the details of the world generator. This however is not only slow, but error prone, as any small detail can majorly change the outcome of the generator. It also requires either heavy reverse-engineering or disassembling the game, which isn't as clear on the legality site based on the EULA:

Although we license you permission to install on your device and play our Game, we are still the owners of it. We are also the owners of our brands and any content contained in the Game. Therefore, when you pay for our Game, you are buying a license to play / use our Game in accordance with this EULA - you are not buying the Game itself. The only permissions you have in connection with the Game and your installation of it are the permissions set out in this EULA.

Any Mods you create for the Game from scratch belong to you (including pre-run Mods and in-memory Mods) and you can do whatever you want with them, as long as you don't sell them for money / try to make money from them and so long as you don't distribute Modded Versions of the Game. Remember that a Mod means something that is your original work and that does not contain a substantial part of our code or content. You only own what you created; you do not own our code or content.

\$\endgroup\$
1
  • \$\begingroup\$ extra: the specific site uses the reimplementation approach based on the code \$\endgroup\$
    – Bálint
    Commented Jun 1, 2019 at 15:19

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .