DerMattinger / MinecraftEarthMap

WorldPainter script with heightmaps and other masks for generating an earth map for Minecraft.
http://earth.motfe.net/
MIT License
110 stars 20 forks source link

Worldpainter files for Earth Survival saves #10

Closed Mentillz closed 5 years ago

Mentillz commented 5 years ago

Hello, can you upload the worldpainter files for Survival Version #3 1:1000, 1:2000, and 1:4000 on Google Drive or OneDrive please? I want to play on the save with structures but I don't like urban, borders, or streets and I cannot turn that off without the worldpainter save to edit the layers.

DerMattinger commented 5 years ago

Hey, the WorldPainter files for the versions: "FULL-SURVIVAL GAMEPLAY" and "NO STRUCTURES / CREATIVITY" are the same. The only difference is the way Minecraft populates the map afterwards. There is a small part on my website describing the problem:

This was a lot harder to achive. When populating the map with structures turned on, Minecraft will place them anywhere in the map (depending on a seed). This will cause some strange placements of villages over water, pyramids in snowy areas, and so on.

The solution I found was the mod "Open Terrain Generator" (short OTG, available for Forge & spigotmc). Sadly only available for 1.12 at the moment.

So when you want a custom map (e.g. no borders / urban) and structures, you need to export the map and use the same method I used. Warning! level of difficulty: expert. You should be experienced with Spigot and OpenTerrainGenerator, because it's prone to error.

Mentillz commented 5 years ago

Can I change the population as it is on the survival version and make it all generate when I load in for the first time because I plan on converting the file to Bedrock Edition.

DerMattinger commented 5 years ago

To learn and understand the problem, you can try it yourself. But there are several problems:

When using "structures" (in Minecraft it is calles "MapFeatures"), Minecraft will place villages, dungeons, etc. in the world, when the chunk gets loaded for the first time. The position of the structures is calculated by the map seed (which normally also calculates the terrain and the biomes). On the Earth Map, the terrain and the biomes are pre-defined, so the location of the structurs will not match the location of the biomes.

Another problem, when you want to convert the Map to Bedrock, it needs to be fully populated, so you need to load every chunk at least once. To automate this process, I used the spigot plugin "WorldBorder".

You have 2 options: 1: Use the map without MapFeatures, populate them with spigot and WorldBorder and convert the map to bedrock 2: Use the map with OpenTerrainGenerator (it's hard to get all settings correct) and do the same as before.

Mentillz commented 5 years ago

Alright, I plan on running a small server with a small group of people and myself on the 1:4000 scale. For WorldBorder once I set the border do I need to use a command to load all of the chunks or does WorldBorder scan all of the chunks within the set border. Also, since the Earth map is a rectangle can I set the WorldBorder to be a rectangular size, if yes, what would be the command to do so. Sorry, I'm not the best with plugins, mods, and commands.

Would Forge be an acceptable alternative to Spigot because I am not that familiar with Spigot.

Also sorry for being so specific but can you walk me through with what the proper border commands I would be using for the 1:4000 map and the command I would use to populate it.

DerMattinger commented 5 years ago

Hey, all the commands you need are the following:

wb shape rectangular wb world setcorners -5376 -2688‬ 5376 2688‬ wb wrap world on wb world fill 100 0 true wb fill confirm

You can modify the value 100 at the fill command... higher means more chunks per second, but can cause lags. 10-100 is accaptable I think.

I would recommand spigot. Forge is mostly used for mods, where you also have to mod the clients. Spigot is for vanilla clients.

Mentillz commented 5 years ago

https://gyazo.com/db8c77e3f748c3f756b9f46e49fc9960

For some reason the worldborder is working but I can't do the setcorners command (I have Spigot and everything else works fine)

I have the plugin when I do /wb everything shows up. I typed "/wb earth setcorners -5376 -2688 5376 2688" nothing happened. It gave me an error message, and when I add "~" next to all of the numbers it describes what the command does and says "an internal error occured while attempting to perform this command."

Console error message: "Unexpected exception while parsing console command "wb earth setcorners -5376 -2688 5376 2688" org.bukkit.command.CommandException: Unhandled exception executing command 'wb' in plugin WorldBorder v1.9.10 (beta) at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34] at org.bukkit.craftbukkit.v1_12_R1.CraftServer.dispatchCommand(CraftServer.java:648) ~[spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34] at org.bukkit.craftbukkit.v1_12_R1.CraftServer.dispatchServerCommand(CraftServer.java:634) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34] at net.minecraft.server.v1_12_R1.DedicatedServer.aP(DedicatedServer.java:444) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34] at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:407) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34] at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:679) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34] at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:577) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34] at java.lang.Thread.run(Unknown Source) [?:1.8.0_211] Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.wimbli.WorldBorder.BorderData at com.wimbli.WorldBorder.Config.setBorderCorners(Config.java:117) ~[?:?] at com.wimbli.WorldBorder.Config.setBorderCorners(Config.java:128) ~[?:?] at com.wimbli.WorldBorder.cmd.CmdSetcorners.execute(CmdSetcorners.java:47) ~[?:?] at com.wimbli.WorldBorder.WBCommand.onCommand(WBCommand.java:141) ~[?:?] at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34] ... 8 more"

Mentillz commented 5 years ago

Just leaving a little update. I got the world to work. I set the border using a workaround with /wb set <> <> and got it to work then I filled it to load all the chunks then ported it to Bedrock. Appreciate the help. Thanks!