Broken Biome Placement
kurisubrooks opened this issue · 24 comments
Dual Core i5, 2GB RAM
Bukkit 1.8.3 (Spigot Compiler)
beta173generator v2.3.3
No, I haven't changed the default settings.
I'd also like to add, i've had this problem in 1.7 aswell. Ever since the new biome system was introduced, I think. If I can help you with any more details, please let me know :)
What is your configuration, server version and plugin version? Did you enable experimantal biome system? You shouldn't really use it, unless you want broken biome placement.
Can you compare it with original beta 1.7.3 map (map editors won't show biomes in beta 1.7.3 maps, they aren't saved anywhere in that version, you can see them only ingame)?
Also note that some biomes that did exist in beta 1.7.3 don't exist anymore. The desert is probably Savanna biome. And swamplands biome did exist in beta 1.7.3, but it had "normal" grass color. And in beta 1.7.3 there is no ocean biome.
I believe biomes were saved to the seed back then, not to the world file. I could make a world but there are no commands back then, making it hard to generate a decent chunk of land.
You can use the beta 1.7.3 version of Single Player Commands mod (that I think is still available to download, but mod thread seems to crash some browsers). Or I can test it if you give me example world seed.
Second time installing the mod now, it seems Minecraft re-downloads the jar upon start. I've installed the mod and it's files correctly, but as soon as I save, exit, and launch the game, it reverts back to normal.
I'm using world seed: "caramel"
It seems I am correct. I look in the Launcher's Log Files, and it redownloads the b173.jar every time I launch the game.
Got my hands on an old Beta 1.7.3 Bukkit Server jar and a copy of a plugin called ForceGenChunks. It's currently generating chunks, so we can have a good idea of how it's world gen works.
Oh sorry, no. I was using the seed "caramel" for testing, the seed for the world in the screenshots is:
[REMOVED]
Also, if you'd like, the live version of that Dynmap is: http://play.kurisu.ml:8123
Is world with seed 'caramel' the world on screenshots? I can't find these places.
Also, if you are using this map on public server you probably should remove the seed from your comment (edit comment)
I see, but what you've done is matched the old names to the new names, which is, but should not correct at all.
In Beta 1.7.3, swamplands were an area with small water pools, and shrub lands are plains without tall grass.
I think you could get off with changing Swamplands to Plains (or ocean, depending on surroundings), and shrub lands to plains. These are (probably) the closest biomes to what's currently available.
I guess it only looks so peculiar is because of the drastic grass colour changes in the latest versions. But I hope you will consider my suggestions.
Also, might I add, don't be afraid to look at the Wiki for information on the biomes, to help you better understand how you could make them as close to old as possible. — http://minecraft.gamepedia.com/Biome/Before_Beta_1.8
This is the whole biome mapping currently used (writing from memory, but should be correct):
Rainforest --> Looks for rainforest first, if not found - uses Jungle (seems close enough to me)
Seasonal forest --> looks for seasonal_forest or seasonalforest first, if not found - uses Forest
Forest --> Forest
Swampland --> Swampland
Savanna --> Attempts to use savanna first (it was written for 1.6.4, before they added savanna), uses plains if not found
Shrubland --> Attempts to use shrubland, uses plains if not found
Taiga --> Taiga
Desert --> Desert
Plains --> Plains
Tundra --> Attempts to use tundra first, then iceplains or ice_plains, if not found - uses taiga
Sky --> Doesn't generate, no mappings
Ice desert --> Attempts to use ice_desert, then cold_beach and if none of them is found - uses desert
If some biome at the end of the list isn't found - it will use plains instead. If plains doesn't exist - it will crash.
Oh I see, so you're trying to cater for multiple versions. Very nice, but might I suggest changing Swampland to Plains? After all, Swamplands in 1.8 is VERY different to Swamplands from Beta 1.7.3
I will change it to plains, but leave configuration option to actually use swamplands.
With new version you can regenerate biomes using /173generator regenbiomes [worldname]
World name is optional, it will use the world you are currently in if no world specified. To use this command you need permission b173gen.regenbiomes. After regenerating biomes restart server.
If you have ProtocolLib plugin you should see effects immediately (unless something changed in ProtocolLib API since I wrote it)
And yes, my plugin works on multiple bukkit version, with the oldest supported version 1.2.5-R5.
After some testing:
Screenshots 1 and 2: There is swamplands biome in these places in beta 1.7.3:
(no images shown on this page because it would be too big)
Swamplands in forest
Swamplands in the middle of the ocean
Screenshot 3: This is not desert, this is savanna. And in beta 1.7.3 it was in the middle of shrublands, but this biome no longer exists so I replaced it with plains:
Shrubland
Savanna
Swamplands in forest
Screenshot 4: This is savanna biome (note: if you are using Minecraft 1.6.4 or older it will generate with desert, but without sand)
Savanna 1
Savanna 2
Screenshot 5: Beta 1.7.3 actually generates swamplands here
Screenshot
On all screenshots I used Single Player Commands mod with flying enabled.
So biome placement isn't broken in my plugin. It's broken in beta 1.7.3.
Right now I'm unable to compile it (missing dependencies, mcstats/metrics repo and website is down). It may take some time to get it working again.
Getting new version approved by bukkit staff may take some time. If you want to use new version before it gets approved you can compile it yourself or download it here: https://dl.dropboxusercontent.com/u/54602353/b173gen-2.3-7-g0d0ef6d.jar
While using regenchunks, I get:
173generator regenbiomes world
[01:41:27 INFO]: Reading world region data... [01:41:29 WARN]: [173generator] Task #202214 for 173generator v2.3-7-g0d0ef6d generated an exception java.lang.NullPointerException at com.github.barteks2x.b173gen.BiomeRegen$Task.run(BiomeRegen.java:144) ~[?:?] at org.bukkit.craftbukkit.v1_8_R1.scheduler.CraftTask.run(CraftTask.java:53) ~[craftbukkit-1.8.jar:git-Bukkit-33d5de3] at org.bukkit.craftbukkit.v1_8_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:349) [craftbukkit-1.8.jar:git-Bukkit-33d5de3] at net.minecraft.server.v1_8_R1.MinecraftServer.z(MinecraftServer.java:668) [craftbukkit-1.8.jar:git-Bukkit-33d5de3] at net.minecraft.server.v1_8_R1.DedicatedServer.z(DedicatedServer.java:284) [craftbukkit-1.8.jar:git-Bukkit-33d5de3] at net.minecraft.server.v1_8_R1.MinecraftServer.y(MinecraftServer.java:609) [craftbukkit-1.8.jar:git-Bukkit-33d5de3] at net.minecraft.server.v1_8_R1.MinecraftServer.run(MinecraftServer.java:517) [craftbukkit-1.8.jar:git-Bukkit-33d5de3] at java.lang.Thread.run(Thread.java:745) [?:1.8.0_40]