The bug is present in 21w19a.
I can not test in 21w20a as that version crashes on my PC due to an unrelated bug.
Looks fixed to me in 18w14b. Tested MC-126419 "Phantoms fly into water and drown"; phantoms will still pursue the player into the water, but will no longer simply drown themselves. Good solution.
This is not an graphics glitch. If you stand inside such a blinking water column the oxygen bar appears and disappears.
I've added a simple setup to reproduce the effect.
I have noticed, that phantoms chase the player even underwater, at least for one attack. If this works as intended, their survival instinct ought to be improved.
Suggestion for the AI:
When breath is low / the phantom is suffocating, then:
fly to a nearby bubble column (if present), or
hunt and eat a nearby pufferfish (if present) to gain 30 seconds of waterbreathing and refilled breath (nasty surprise for the player), or
glide towards the surface at 70° inclination. This way the phantom will soon reach the surface and has a chance to navigate overhangs.
Once the phantom has replenished its breath it can resume chasing the player.
Option 3 ought to get the phantom unstuck in any of the scenarios described in the various related bug reports.
@ Grum
Sorry for the late reply. The language-casing seems to be a holdover from the MC 1.8 profile generation.
I was using an old profile for the snapshots when I got hit. It can be reproduced by creating a new MC 1.8 profile in the launcher.
Xavom has pinpointed the source of the trouble. I have edited my options.txt file accordingly and can switch the bug on and off by using en_US and en_us, respectively.
Thanks, Xavom
Confirmed under Windows 10 Pro, 64bit, no resource packs installed.
What I noticed in launcher_log.txt is the weird mix of slashes and backslashes in the filepaths, e.g.
[1122/174347:INFO:ClientStarter.cpp(619)] ${assets_root} == "C:/Users\REDACTED\AppData\Roaming\.minecraft/assets"
which do not match the regex reported in the error message
IllegalArgumentException: Non [a-z0-9/._-] character in path
Here the relevant section of launcher_log.txt, sensitive data redacted.
[1122/174347:INFO:GameCallbacks.cpp(178)] launcher/launcher (main) info Using default game log configuration client-1.12.xml (outputs XML)
[1122/174347:INFO:GameCallbacks.cpp(178)] launcher/launcher (main) debug Installing versions!
[1122/174347:INFO:GameCallbacks.cpp(178)] launcher/launcher (main) info Installed 17w47a to C:/Users\REDACTED\AppData\Roaming\.minecraft\versions\17w47a\17w47a.json
[1122/174347:INFO:ClientStarter.cpp(619)] ${natives_directory} == "C:\Users\REDACTED\AppData\Local\Temp\9272-e4b9-e166-aac8"
[1122/174347:INFO:ClientStarter.cpp(619)] ${launcher_name} == "minecraft-launcher"
[1122/174347:INFO:ClientStarter.cpp(619)] ${launcher_version} == "2.0.1003"
[1122/174347:INFO:ClientStarter.cpp(619)] ${classpath} == "C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\com\mojang\patchy\1.1\patchy-1.1.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\oshi-project\oshi-core\1.1\oshi-core-1.1.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\net\java\dev\jna\jna\4.4.0\jna-4.4.0.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\net\java\dev\jna\platform\3.4.0\platform-3.4.0.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\com\ibm\icu\icu4j-core-mojang\51.2\icu4j-core-mojang-51.2.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\net\sf\jopt-simple\jopt-simple\5.0.3\jopt-simple-5.0.3.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\com\paulscode\codecjorbis\20101023\codecjorbis-20101023.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\com\paulscode\codecwav\20101023\codecwav-20101023.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\com\paulscode\libraryjavasound\20101123\libraryjavasound-20101123.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\com\paulscode\soundsystem\20120107\soundsystem-20120107.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\io\netty\netty-all\4.1.9.Final\netty-all-4.1.9.Final.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\com\google\guava\guava\21.0\guava-21.0.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\org\apache\commons\commons-lang3\3.5\commons-lang3-3.5.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\commons-io\commons-io\2.5\commons-io-2.5.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\commons-codec\commons-codec\1.10\commons-codec-1.10.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\net\java\jinput\jinput\2.0.5\jinput-2.0.5.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\net\java\jutils\jutils\1.0.0\jutils-1.0.0.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\com\mojang\brigadier\0.1.13\brigadier-0.1.13.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\com\google\code\gson\gson\2.8.0\gson-2.8.0.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\com\mojang\authlib\1.5.25\authlib-1.5.25.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\org\apache\commons\commons-compress\1.8.1\commons-compress-1.8.1.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\org\apache\httpcomponents\httpclient\4.3.3\httpclient-4.3.3.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\commons-logging\commons-logging\1.1.3\commons-logging-1.1.3.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\org\apache\httpcomponents\httpcore\4.3.2\httpcore-4.3.2.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\it\unimi\dsi\fastutil\7.1.0\fastutil-7.1.0.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\org\apache\logging\log4j\log4j-api\2.8.1\log4j-api-2.8.1.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\org\apache\logging\log4j\log4j-core\2.8.1\log4j-core-2.8.1.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\org\lwjgl\lwjgl\3.1.2\lwjgl-3.1.2.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\org\lwjgl\lwjgl-jemalloc\3.1.2\lwjgl-jemalloc-3.1.2.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\org\lwjgl\lwjgl-openal\3.1.2\lwjgl-openal-3.1.2.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\org\lwjgl\lwjgl-opengl\3.1.2\lwjgl-opengl-3.1.2.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\org\lwjgl\lwjgl-glfw\3.1.2\lwjgl-glfw-3.1.2.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\org\lwjgl\lwjgl-stb\3.1.2\lwjgl-stb-3.1.2.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\libraries\com\mojang\text2speech\1.10.3\text2speech-1.10.3.jar;C:\Users\REDACTED\AppData\Roaming\.minecraft\versions\17w47a\17w47a.jar"
[1122/174347:INFO:ClientStarter.cpp(619)] ${auth_player_name} == "Gulbaru"
[1122/174347:INFO:ClientStarter.cpp(619)] ${version_name} == "17w47a"
[1122/174347:INFO:ClientStarter.cpp(619)] ${game_directory} == "D:/REDACTED\mc\.minecraft_snapshot"
[1122/174347:INFO:ClientStarter.cpp(619)] ${assets_root} == "C:/Users\REDACTED\AppData\Roaming\.minecraft/assets"
[1122/174347:INFO:ClientStarter.cpp(619)] ${assets_index_name} == "1.12"
[1122/174347:INFO:ClientStarter.cpp(619)] ${auth_uuid} == "UUIDREDACTED"
[1122/174347:INFO:ClientStarter.cpp(619)] ${auth_access_token} == "TOKENREDACTED"
[1122/174347:INFO:ClientStarter.cpp(619)] ${user_type} == "mojang"
[1122/174347:INFO:ClientStarter.cpp(619)] ${version_type} == "snapshot"
[1122/174347:INFO:WindowsProcess.cpp(124)] Read thread is 1b24
[1122/174347:INFO:ClientHandler.cpp(155)] Hiding launcher!
[1122/174348:INFO:GameCallbacks.cpp(178)] game/bmg (Client thread) info Setting user: Gulbaru
[1122/174350:INFO:GameCallbacks.cpp(178)] game/bmj (Client thread) warn Skipping bad option: lastServer:
[1122/174350:INFO:GameCallbacks.cpp(178)] game/bmg (Client thread) info LWJGL Version: 3.1.2 build 29
[1122/174350:INFO:GameCallbacks.cpp(178)] game/sc (Client thread) info Reloading ResourceManager: Default
[1122/174350:INFO:GameCallbacks.cpp(178)] game/bmg (Client thread) info Caught error stitching, removing all assigned resourcepacks
java.lang.IllegalArgumentException: Non [a-z0-9/._-] character in path
at mp.<init>(SourceFile:31)
at mp.<init>(SourceFile:44)
at cjd.a(SourceFile:35)
at cjc.a(SourceFile:60)
at sc.c(SourceFile:132)
at sc.a(SourceFile:115)
at bmg.f(SourceFile:643)
at bmg.al(SourceFile:427)
at bmg.a(SourceFile:354)
at net.minecraft.client.main.Main.main(SourceFile:134)
[1122/174350:INFO:GameCallbacks.cpp(178)] game/sc (Client thread) info Reloading ResourceManager:
[1122/174350:INFO:GameCallbacks.cpp(178)] game/clf (Client thread) warn Missing sound for event: minecraft:ambient.cave
[1122/174350:INFO:GameCallbacks.cpp(178)] game/clf (Client thread) warn Missing sound for event: minecraft:block.anvil.break
I'm not sure, MC-115025 is really a duplicate.
In MC-114943 you put items into the grid, then select a recipe. The target item gets created and the items put into the grid are deleted.
In MC-115025 the recipe pulls the ingredients out of the inventory, then deletes the ingredient which happens to be beneath the mouse pointer and fails to craft the target item. (I have now attached a video to MC-115025)
Corrected teleport command in description.
Updated affected versions.
Not really a duplicate, as in this case stripped versions of different blocks have the same color in-game.