Affects Version/s: Minecraft 1.4.6, Minecraft 1.4.7, Snapshot 13w02a, Snapshot 13w02b, Minecraft 1.5, Snapshot 13w11a, Minecraft 1.5.1, Snapshot 13w16a, Minecraft 1.5.2, Minecraft 1.6.1, Minecraft 1.6.2, Minecraft 1.6.4, Minecraft 13w39b, Minecraft 13w41a, Minecraft 13w41b, Minecraft 13w42a, Minecraft 13w42b, Minecraft 1.7.4, Minecraft 14w04b
Fix Version/s: None
The LC parameter which shows when you have debug enabled, is an index of the upper y coordinate of the chunk section which has the highest non-air block for that chunk. This parameter is important in the calculations for entity spawning. When you place a block above that section or remove every non-air block out of that section, the section should be unloaded or loaded as applicable and the LC parameter should correctly reflect this change.
What happens when you remove a section:
When you remove a section of a chunk, e.g. by removing all non-air blocks. The section stays loaded and the server still uses these empty sections for calculations like mobspawning. This does not change if you reload the world! However, if you reload the world, the client's LC parameter will reflect that it has been recalculated (even though the section has not been unloaded on the server).
What should happen:
When a section is completely empty it should not be loaded, the LC parameter should reflect that it is not loaded. And any calculations for mob spawning etc, should use the correct LC value. The client should always show the correct LC value.
How to fix:
There is a method in the Chunk class (abw.class) which checks for the topmost filled section in a chunk (int h()). Don't just check that the section is not null, but also that it is not empty.
This video details the problem and the fix
This bug has existed for a long time, let's get it fixed !