Viewing Single Trivia
▲
1
▼
Before version 18w07a (1.13), the height of large oak trees would be shared for each instance of the large tree generator created. Before Beta 1.8, this was not an issue since every time a large tree needed to be generated it used a new instance of the generator. However, from Beta 1.8 onward, each biome had its own large tree generator instance, resulting in naturally generated large trees sharing the same height per biome. These height values would remain the same until the game is restarted.
The source code below is generated using RetroMCP for version 1.2.5 unless otherwise stated.
Around line 340 of WorldGenBigTree.java, this can be found:
[code]
if(this.heightLimit == 0) {
this.heightLimit = 5 + this.rand.nextInt(this.heightLimitLimit);
}
[/code]
This code randomises the height of generated large oak trees. However, this height limit is set once due to the [code]this.heightLimit == 0[/code] check.
Line 51 of BiomeGenBase.java shows the generator instance being created: [code]protected WorldGenBigTree worldGenBigTree = new WorldGenBigTree(false);[/code] The instance is unique for every biome created and is used whenever a biome has large trees in it. Therefore, large tree heights are unique per biome. This is not too noticable however, since these trees only generate in forests, extreme hills, ice plains, jungles and plains.
Between Alpha v1.2.0 and Beta 1.7.3, BiomeGenBase still controlled what trees were generated, but it used a new large tree generator instance every time, as seen on line 64: [code]return (WorldGenerator)(var1.nextInt(10) == 0 ? new WorldGenBigTree() : new WorldGenTrees());[/code] In earlier versions, new generator instances were still being created with the exception that the height was shared per chunk: in Alpha v1.1.2_01, the following code was used around line 380 in ChunkProviderGenerate.populate().
[code]
Object var18 = new WorldGenTrees();
if(this.rand.nextInt(10) == 0) {
var18 = new WorldGenBigTree();
}
[/code]
In the image attached to this submission, it shows a world generated in Minecraft Java Edition 1.9.4. The red sand border shows the border between chunks generated before and after game reset. Trees with sea lanterns are large trees generated before the reset and trees with glowstone are large trees generated after the reset.
This bug has its own report on the official bug tracker:
https://bugs.mojang.com/browse/MC-11208
Around line 340 of WorldGenBigTree.java, this can be found:
[code]
if(this.heightLimit == 0) {
this.heightLimit = 5 + this.rand.nextInt(this.heightLimitLimit);
}
[/code]
This code randomises the height of generated large oak trees. However, this height limit is set once due to the [code]this.heightLimit == 0[/code] check.
Line 51 of BiomeGenBase.java shows the generator instance being created: [code]protected WorldGenBigTree worldGenBigTree = new WorldGenBigTree(false);[/code] The instance is unique for every biome created and is used whenever a biome has large trees in it. Therefore, large tree heights are unique per biome. This is not too noticable however, since these trees only generate in forests, extreme hills, ice plains, jungles and plains.
Between Alpha v1.2.0 and Beta 1.7.3, BiomeGenBase still controlled what trees were generated, but it used a new large tree generator instance every time, as seen on line 64: [code]return (WorldGenerator)(var1.nextInt(10) == 0 ? new WorldGenBigTree() : new WorldGenTrees());[/code] In earlier versions, new generator instances were still being created with the exception that the height was shared per chunk: in Alpha v1.1.2_01, the following code was used around line 380 in ChunkProviderGenerate.populate().
[code]
Object var18 = new WorldGenTrees();
if(this.rand.nextInt(10) == 0) {
var18 = new WorldGenBigTree();
}
[/code]
In the image attached to this submission, it shows a world generated in Minecraft Java Edition 1.9.4. The red sand border shows the border between chunks generated before and after game reset. Trees with sea lanterns are large trees generated before the reset and trees with glowstone are large trees generated after the reset.
This bug has its own report on the official bug tracker:
https://bugs.mojang.com/browse/MC-11208
Comments (0)
You must be logged in to post comments.
Related Games
Fez
BioShock Infinite
Tony Hawk's American Wasteland
Dominion: Storm Over Gift 3
Grid 2
Far Cry: Primal
Creatures
Antonblast
Prince of Persia 2: The Shadow and the Flame
BlazBlue: Calamity Trigger
Duke Nukem 3D
Dynamite Headdy
SimCity 2000
Bully
Resident Evil 7: Biohazard
Chex Quest
FIFA 23
Worms 3D
Rayman 4
Command & Conquer: Generals
Need for Speed: Underground 2
The Crooked Man
SimCity 3000
LEGO Rock Raiders
Streets of Rage 4
Disney's Aladdin
Armored Core VI: Fires of Rubicon
Eternity's Child
New Trivia!
Roblox
Castle of Illusion Starring Mickey Mouse
The Wolf Among Us
ConcernedApe's Haunted Chocolatier
Lemony Snicket's A Series of Unfortunate Events
This Is the Police
Billy Hatcher and the Giant Egg
Warframe
MiSide
Garten of Banban 7
Left 4 Dead
Final Fantasy XV
Enchanted Portals
Pinball Arcade
Marathon
Horizon Forbidden West
Real Bout Fatal Fury 2: The Newcomers
Need for Speed: Most Wanted
The Secret of Monkey Island
The Banner Saga
I-Ninja
My Time at Sandrock