Running into some strange worldgen with Astral Sorcery
Saereth opened this issue ยท 6 comments
Versions
Betweenlands version:
v3.3.11 MC 1.12.2
Forge version:
14.23.4.2749
Singleplayer or Multiplayer:
Single player and multiplayer
Installed mods:
Link to full crash log
This is not a crash
Description of the problem
How to reproduce:
- Create a new world and allow Astral sorcery to worldgen in between lands
- Create a portal to between lands
- Be dissapointed
Also opened an issue with Astral Sorcery HellFirePvP/AstralSorcery#867
Expected result:
Tree portal not generate on top of Astral sorcery structures (maybe a check for valid ground to spawn in on?)
Actual result:
Tree spawned on top of AS worldgen
Pictures:
Not sure how you would best want to approach this issue but maybe lowering the y height here
https://github.com/Angry-Pixel/The-Betweenlands/blob/1.12/src/main/java/thebetweenlands/common/world/gen/feature/structure/WorldGenWeedwoodPortalTree.java#L44-L46
or even checking for specific betweenlands blocks to be valid start points for the tree generation.
Ideally in this situation the tree portal would be offset to the side. Or perhaps maybe a smaller default style portal like a nether portal if the generator fails its first attempt to find a valid position? Tricky issue I'm sure.
this happens almost every time reproducibly. which I think also has to do with astral sorery's worldgen, there is almost always an AS structure or several generated immediately upon creating the portal/generating that entry chunk, any insight by chance @HellFirePvP ?
Am I right in the assumption that this happens very rarely? :P
I'm pretty sure the portal does check for valid ground (some kind of grass, dirt or similar block) and whether there's enough space for the portal. There actually are 2 fallbacks when the portal fails generating, but in this case it didn't fail generating because there was enough space and the top of that structure seems to be covered with our grass/dirt.
Also, finding a location for the portal is already slow enough as is, I don't really intend to make it even slower for some rare edge cases. If I do find an error somewhere in the checks I'll fix it though ๐