Talk:Biome spread

Walls do not spread biomes.
Confirmed here on forums. --MentalMouse42 (talk) 04:54, 17 August 2019 (UTC)


 * According to the 1.3.5.3 source code, that is not entirely true. Walls do spread, but they only affect natural purity walls. Here is what I found:
 * Natural Corrupt Grass Walls, natural Ebonstone Walls (both regardless of foreground block type – can be none at all), and Corrupt grass can all convert any Grass Wall, Jungle Wall, or Flower Wall (all three natural or manually placed, does not matter) within a radius of 2 tiles to a natural Corrupt Grass Wall, but only if there is at least one Corruption-related block (Demonite Ore, Corrupt grass, Corruption plants/flowers, Vile Mushroom, Ebonstone Block, Corruption Thorny Bush, Ebonsand Block, or Purple Ice Block) within a radius of 20 tiles. Crimson and Hallow seem to be quite similar to that (although Hallow cannot convert Jungle Walls, as it cannot convert any Jungle tiles).
 * There is some... unexpected behavior, though: Above the surface, the Crimson does not have this Crimson-related-block-within-20-tiles restriction, but instead the restriction that there does need to be a Crimson-related block in front of the Crimstone/Crimson Grass Wall. Below the surface, this seems to be true for all three biomes. I am highly skeptical about this, because it would be very arbitrary to let only surface Corruption and Hallow spread quite differently from the rest (or am I missing something here?). I assume an error occurred during decompiling which led to certain variable names being swapped (especially because there is unused, unnecessary code nearby, which would imply behavior like described above – if the variable names were correct).
 * The Underground Desert has a separate spreading mechanism: Natural Ebonsandstone Walls, natural Hardened Ebonsand Walls (both regardless of foreground block type – can be none at all), and Ebonsandstone Blocks can convert any Sandstone Wall, natural Crimsandstone Wall, or natural Pearlsandstone Wall to a natural Ebonsandstone Wall and can convert any natural Hardened Sand Wall, natural Hardened Crimsand Wall, or natural Hardened Pearlsand Wall to a natural Hardened Ebonsand Wall. Both conversions can only happen within a radius of 2 tiles and only if there is any Corruption-related block within a radius of 20 tiles.
 * I would like to get some input on this before adding it to the article, especially regarding what I called "unexpected behavior" above. After doing some more source-digging, I realized that Corruption and Crimson are not actually always as similar as I had thought, but this still seems odd to me. Has anybody experienced something in that regard?
 * --Rye Greenwood (talk) 04:09, 18 August 2019 (UTC)


 * Thank you for the source-dive! I wouldn't assume an error in decompiling -- unless you know your decompiler is unreliable, this sort of thing is exactly what a decompiler is expected to get right.  It's entirely plausible that some code got orphaned when a dev decided to make the Crimson behavior more distinct from Corruption.  In any case, you have brought out a core of useful information:  "Walls cannot infect blocks, but they can infect other walls within 2 tiles, if there are infected blocks nearby.  Unlike blocks, walls may also convert walls from other infectious biomes.  The exact restrictions on wall infection vary with both the infectious biome and the underlying biome."  That much can go right in the page, and I'll put it there, then come back to try and summarize the details here.  --MentalMouse42 (talk) 11:41, 18 August 2019 (UTC)


 * OK, I'm back. I'll try to summarize your findings so far, and you can tell me if I've got it right.
 * Natural infected grass, grass walls, or stone walls can convert natural or placed pure grass, jungle or flower walls into infected grass walls, except that Hallow can't convert jungle walls.
 * Corruption, Hallow, and underground Crimson need an biome block within 20 tiles. Surface Crimson instead requires an biome block in front of the source wall.
 * Natural infected sandstone or hardened-sand walls, or infected sandstone blocks, can infect natural sandstone or sand walls, including those of other biomes, again only if there's a biome block within 20 tiles.
 * Here you discuss Corruption but not Crimson. Given the preceding, I think it's worth checking if Crimson (and/or Hallow) have any differences.
 * In all cases, wall infection range is 2 tiles, rather than the 3 tile range for block infection.
 * Any wall which becomes infected thereafter counts as a natural wall. (What about placed walls which get infected or purified by powder/water/solution?)
 * Does that look right? --MentalMouse42 (talk) 13:32, 18 August 2019 (UTC)
 * Does that look right? --MentalMouse42 (talk) 13:32, 18 August 2019 (UTC)


 * Thank you for structuring that thing. I glanced through the code again to confirm everything and found another exception that I missed (I have to admit, I was rather tired yesterday): In regards to Hallowed wall spread, only natural Hallowed Grass Walls and Hallowed grass blocks can convert other walls – Pearlstone Walls cannot.
 * I realize I have not expressed myself unambiguously enough. Only Corrupted and Hallowed walls that are above the surface require a biome tile nearby (that 20-tile range) to spread. The rest instead requires the source tile to contain a biome block in the foreground.
 * Apart from that, it looks good. The term "underground Crimson" should probably be avoided, because that refers to the actual biome, which exists in the Cavern layer (whereas here, the mechanics already apply just below the surface, i.e. in the Underground layer).
 * In the Underground Desert, Crimson and Hallow behave exactly like the Corruption.
 * I'll list the biome tiles which are necessary for spread here (they are the same for both above- and below-surface wall spread), because there are certain inconsistencies (who would have thought):


 * Last point: Yes, all walls that get converted to biome variants, regardless of whether they were placed manually or naturally, are afterwards considered natural. I am not sure how much of a difference this makes (I do not think there are that many walls with both natural and manual forms), but well, that is how it is.
 * Thrown Powder can safely be ignored, since it only affects foreground blocks. Thrown Water and Clentaminator solutions behave similarly in that they always convert all pure and biome variants of Grass Walls (player-placed or not), Stone Walls, Sandstone Walls, and Hardened Sand Walls to the respective biome counterpart.
 * --Rye Greenwood (talk) 21:46, 18 August 2019 (UTC)


 * Addition: In-game testing revealed that the 20-tile range limit is not always adhered to in practice (https://imgur.com/a/AnRklmB), only sometimes. I guess it should be treated more as an estimate. --Rye Greenwood (talk) 22:05, 18 August 2019 (UTC)


 * Thanks again for your delving. Unfortunately, it's late here and I'm going to be out early tomorrow, so it may not be until tomorrow evening that I can edit the page.  (I'm fine if you decide to do it yourself.)  As far as "how much of a difference this makes": Consider that Underground Desert is defined by the presence of natural walls... and now we know a way to turn placed walls into natural walls!  Win!  --MentalMouse42 (talk) 02:00, 19 August 2019 (UTC)