I've been struggling to get this right for a while now. Basically, I want to have an always persistent ocean in the world, where any air "blocks" below a certain Y level get replaced with stationary water (and Y 0 is just a layer of barrier blocks). I know that I could just use a world generator to do this, but then the server has to process all of that, and since this project involves having a giant amount of worlds (all of which will have this "ocean"), I don't think it'd be a good idea in terms of storage either. I want to achieve this with ProtocolLib, by intercepting every MAP_CHUNK packet sent and populating the water blocks there. But for the life of me, I can't figure out how to even read/write the chunk data. I tried using ChunkPacketProcessor, however that seems outdated and I can't get it to handle the data properly, it always seems to corrupt the chunk. Does anyone have a solution for this?