Uploaded image for project: 'Minecraft: Java Edition'
  1. Minecraft: Java Edition
  2. MC-239129

Some snowy biomes do not use the correct water color



    • Bug
    • Status: Open
    • Resolution: Unresolved
    • 1.17.1, 21w41a, 21w44a, 1.18 Release Candidate 3
    • None
    • Confirmed
    • World generation
    • Normal


      The bug

      A multitude of cold biomes are configured to tint water a deeper blue than normal. However, this only applies to some biomes - others (notably including the cold mountain biomes added in 1.18) just use the default water color instead, which is wrong.

      Table of biome colors

      This table details what biomes use what approximate colors. Also refer to the screenshots attached to this ticket.

      Biome Color used Notes
      minecraft:plains Default Included here for reference
      minecraft:ocean Default Included here for reference
      minecraft:deep_ocean Default Included here for reference
      minecraft:river Default Included here for reference
      minecraft:cold_ocean Slightly bluer than default  
      minecraft:deep_cold_ocean Slightly bluer than default  
      minecraft:frozen_ocean Moderately bluer than default  
      minecraft:deep_frozen_ocean Moderately bluer than default  
      minecraft:frozen_river Moderately bluer than default  
      minecraft:snowy_plains Default  
      minecraft:ice_spikes Default  
      minecraft:snowy_taiga Slightly bluer than default  
      minecraft:snowy_beach Slightly bluer than default  
      minecraft:snowy_slopes Default  
      minecraft:frozen_peaks Default  
      minecraft:jagged_peaks Default  
      minecraft:grove Default  

      Expected results

      The biomes marked in the above table would use water colors which are bluer than default.

      Actual results

      Said biomes just reuse the default water coloring, causing inconsistencies.

      How to fix

      There are several ways in which this could be fixed. I have listed three different methods below, starting with the most basic and ending with the most preferable.

      Quick and dirty

      The first, and worst, approach would be to simply changing the marked biomes to use a slightly bluer water color instead of having them just use the default color water uses. This way they'd line up with other cold biomes.

      Bedrock Edition parity

      A better idea than this, though, would be to port the water colors from Bedrock Edition, which are defined for a much more diverse set of biomes than is currently the case on Java Edition. With 1.18 making major changes to biomes and aiming for seed parity, not only would this be another step towards parity, but could also fix other biome color bugs such as MC-130445 and MC-194412. A list can be found here: https://minecraft.fandom.com/wiki/Tint#Water_3

      1. Click on the wiki link above
      2. Modify each biome's json file to set their respective water colors to the respective values in the above Bedrock Edition table (which should include the biomes considered inconsistent here)

      Revive watercolor.png (Preferable fix - future-proof)

      The final proposed fix requires code changes, but would prevent any future cases similar to this bug from happening, as only a small subset of biomes would require an explicit override for the biome color. All of the problem biomes mentioned within this ticket would be fixed automatically, due to not belonging to this subset.

      This would specifically involve the use an an unused, since-removed water colormap file that existed in versions from Beta 1.6 Test Build 3 and was removed in 1.6 (13w24a) due to ultimately being unused at the time. Originally intended for use on biome-specific water colors (like was done for grass and leaves at the time), the snippet of code that referenced it also went unused.

      This file could be reimplemented into modern versions to handle water colors for most biomes (with swamps being the only exception that would need an explicit definition, as well as possibly nether and end biomes if parity is also desired). As such, manually-specified water color values could be removed from all other biomes, as this colormap file would fill in for them instead.

      1. Obtain the file from any version that has it (such as 1.5.2) - it can be found as [jar]/misc/watercolor.png
      2. Place this file into the current version and rename it: [jar]/assets/minecraft/textures/colormap/water.png
      3. Remove the explicitly defined water colors from all biome json files, excluding swamps
      4. Change the code that handles biome colors such that if no color is defined for water, it instead refers to colormap/water.png and picks a color depending on the temperature and humidity values (which is how grass and foliage are handled currently)
      5. (optional but recommended) Also define colors for all Nether and End biomes to be what they're defined as in Bedrock Edition, for the sake of parity, since the colormap's definitions for those might not look as good
      6. Rejoice in the fact that oversights like this will never crop up again in future


        1. 2021-10-16_20.43.05.png
          270 kB
        2. 2021-10-16_20.43.07.png
          261 kB
        3. 2021-10-16_20.43.10.png
          273 kB
        4. 2021-10-16_20.44.10.png
          279 kB
        5. 2021-10-16_20.44.12.png
          275 kB
        6. 2021-10-16_20.46.15.png
          285 kB
        7. 2021-10-16_20.48.50.png
          294 kB
        8. 2021-10-16_20.51.54.png
          274 kB



            Unassigned Unassigned
            Awesoman3000 Connor Steppie
            12 Vote for this issue
            5 Start watching this issue