Crash on a KCauldron 1.7.10 server
quantumsheep opened this issue ยท 4 comments
Issue Description:
Crash in a server (logs say that's when a Roofed Forest is generated.
Disable Roofed Forest overriding can fix the issue ?
Steps to reproduce:
Generate a Roofed Forest
Additional Information:
Affected Versions (Exact numbers, do not use "latest"):
- Biomes O' Plenty: 1.7.10-2.1.0.1889
- Minecraft: 1.7.10
- Forge: 10.13.4.1614
- KCauldron: 1.7.10-1614.201
Similar problems are most likely due to the generation conflict, it happens when collisions of generated objects occur, it can be reproduced even in vanilla if you add many objects of the underground world and its surface.
With mods, it's easier to catch for example objects with more than 2x2 chunks.
That is, I mean that the problem is this vanilla bug, or the drawback of the generation system itself.
PS The errors in the logs themselves can be different. Variant solutions (maybe not 100%): 1) next cycle gen 2) skip gen/suspend exception 3) change the rules of generation 4) etc etc
After searching a little, that the part of the code is bad :
` public void func_76728_a(World world, Random random, int chunkX, int chunkZ)
{
for (int k = 0; k < 4; k++) {
for (int l = 0; l < 4; l++)
{
int i1 = chunkX + k * 4 + 1 + 8 + random.nextInt(3);
int j1 = chunkZ + l * 4 + 1 + 8 + random.nextInt(3);
int k1 = world.func_72976_f(i1, j1);
if (random.nextInt(20) == 0)
{
WorldGenBigMushroom worldgenbigmushroom = new WorldGenBigMushroom();
worldgenbigmushroom.func_76484_a(world, random, i1, k1, j1);
}
else
{
WorldGenAbstractTree worldgenabstracttree = func_150567_a(random);
worldgenabstracttree.func_76487_a(1.0D, 1.0D, 1.0D);
if (worldgenabstracttree.func_76484_a(world, random, i1, k1, j1)) {
worldgenabstracttree.func_150524_b(world, random, i1, k1, j1);
}
}
}
}
k = random.nextInt(5) - 3;
int l = 0;
while (l < k)
{
int i1 = random.nextInt(3);
if (i1 == 0) {
field_150610_ae.func_150548_a(1);
} else if (i1 == 1) {
field_150610_ae.func_150548_a(4);
} else if (i1 == 2) {
field_150610_ae.func_150548_a(5);
}
int j1 = 0;
while (j1 < 5)
{
int k1 = chunkX + random.nextInt(16) + 8;
int i2 = chunkZ + random.nextInt(16) + 8;
int l1 = random.nextInt(world.func_72976_f(k1, i2) + 32);
if (field_150610_ae.func_76484_a(world, random, k1, l1, i2)) {
break;
}
j1++;
}
l++;
}
super.func_76728_a(world, random, chunkX, chunkZ);
}`
They said they no longer support 1.7.10, even if 1.7.10 is currently the most user version. :P
That is correct. As for the reasoning of it being most used version, I'll leave it at "that's debatable". Additionally, Cauldron and similar mods have never been supported because of the significant changes they make which break mod functionality. Both of these things were noted in the issue template...
- This issue occurs on either Minecraft 1.9.4 or 1.10
- This issue occurs without Optifine, Cauldron or similar mods installed
I respectfully ask that you read over the template more carefully in future.