In our server, most of us use a custom jar with Optifine and a language mod to match the server's texture pack. The language mod modifies languages.txt to include another entry that can be selected from the ingame menu.
When using English (en_us), Anvils behave correctly. However, when using the custom language (en_er), Anvils will behave oddly and believe every operation is accompanied to a rename, making all costs excessive.
What happens is:
When you place an item in the Anvil slot, it will be available to pick up on the result slot, even though no operation was specified (repair, mix, rename). Picking up this item from the Anvil result slot will make it vanish and will consume XP equivalent to that of renaming, and also make the Anvil use sound. Upon exiting the Anvil interface, the item will be thrown to the ground and will display a renamed tag. Moreover, an example operation that would normally cost 9L will instead silently remove 16L and make the item display a renamed tag.
Inputting the regular english name of the item will deny the operation. Inputting the language mod's regular name for the item will initially deny, but a fraction later revert and display a possible operation with no cost. Screenshot included.
Modding the server jar with the language mod makes no difference.
Rejoining the server with English (en_us) will still display the modded name on renamed items, showing they are in fact renamed.
Strangely enough, this entire issue does not happen on Single Player.
One approach to this would be allowing the texture pack to include a custom lang file that both the server and the client can load, accompanied by a toggle on the game's options.
Duplicate of MC-1123 , please use the search function to see if your bug has already been submitted. Currently over 30% of tickets are being closed as duplicate.