User:User-12316399/Technical changes

This page documents proposals for technical changes to the Java Edition.

World size expansion

 * Expand the default world size to x/z ±2,000,000,000, from ±30,000,000
 * This can easily be done.
 * The only issues with this is that certain bugs caused by the usage of 32-bit floating-point numbers may become exaggerated at such high distances (see this post). However, these can easily be fixed, and has been done with mods such as this Fabric mod.
 * The only other major issue with this is the fact that 1.14's lighting engine breaks down after x/z ±33,554,432. This could probably be fixed as well with minimal effort.

Loot tables

 * Certain things missing from vanilla:
 * Loot table for fire
 * Head drops from charged creepers should be added to loot tables
 * The contents of pumpkin and melon stem loot tables should be copied to their attached variants so they drop seeds as well
 * Make iron doors not drop when broken without a proper tool
 * Experience drops should be added to loot tables
 * Mob spawning could potentially be added to loot tables, to some extent. Examples include:
 * Silverfish from corrupted blocks
 * Baby turtles from turtle eggs
 * Slimes from larger slimes
 * Magma cubes from larger magma cubes
 * Breeding
 * Loot tables for projectiles upon being destroyed due to a collision. Extrapolating from the above suggestions, bottle o' enchanting could draw its dropped experience from a loot table, chicken eggs their spawned baby chickens, and lingering potions their spawned area effect clouds.

Particles

 * Several cases of missing particles:
 * Falling blocks being broken (not an issue on Bedrock Edition)
 * Anvils breaking from falling or overuse
 * Blocks replaced by other blocks from a player or from a flowing fluid
 * Armor stands when not directly destroyed by a player
 * Particles should use 64-bit floating point precision instead of 32-bit, as noted above.
 * Water-related particles should use biome colouring
 * Potion particles from thrown potions incorrectly snap to block corners, this should be fixed

Models and textures

 * Beds should revert to using block models for rendering instead of using an entity model, allowing for easier editing of the bed model, it not disappearing at distances, and the ability to cull unneeded faces.
 * Fix combining characters so that speakers of Hindi and other such languages can actually read the text.
 * Redstone wire should be visible from underneath
 * Numerous cullface arguments are missing from models, causing unneeded faces to be rendered

Recipes

 * Smelting and blasting recipes for the remaining tools which require iron to craft.
 * Attempt to remove as many NBT-based crafting recipes as possible:
 * Remove inventory crafting of damaged tools again. Instead, a button could be added that switches between a 2x2 crafting grid and a grindstone-like interface.
 * Port over cauldron-based dyeing from Bedrock Edition, and use this for leather dyeing instead of crafting.
 * Remove all inventory-based map crafting recipes (aside from those used to craft the map itself) - these should all be covered by the cartography table anyway
 * All firework-related crafting could be transferred to a dedicated block (as proposed by the devs)
 * Remove inventory crafting of tipped arrows - instead use cauldrons for it as in Bedrock Edition and port over their potion cauldron mechanics
 * Remove banner cloning recipe - this should be moved to the loom instead, perhaps by putting the banner to be cloned in the banner pattern slot?
 * Applying banners to shields - could maybe be done on a loom, placing the banner into the pattern slot and the shield into the banner slot, or maybe could be done in an anvil
 * Remove suspicious stew recipe - brown mooshrooms can already be used to create all types of suspicious stew
 * This leaves bookcloning and shulkerboxcoloring - what to do with these?

Lighting

 * Stop lighting from breaking down after x/z ±33,554,432

Fluids

 * Allow for lavalogging, analogously with waterlogging
 * Allow flowing liquids to occupy other blocks as well
 * Allow bubble columns to occupy blocks
 * Remove the waterlogged block state

Characters

 * Characters would become completely independent of world files, allowing one character to exit one world and start playing in another while keeping their inventory, ender chest, status effects, advancements, etc. as in Terraria
 * This may completely break certain servers, since this would allow external (and perhaps cheated) resources from other worlds to be brought into the server, which may be very undesirable for many server types such as factions, so there should be an option to ban these characters from joining and instead have characters provided by the server in some form instead
 * Similar stuff for adventure maps
 * Gamerules would also have to be taken into consideration - these would have to be saved to the character as well, and this could be used to cheat items into otherwise legitimate worlds
 * Bans and the like would still be per account
 * Players would be able to select skins per character, instead of only having one skin at a time which is tied to their account