Really good game. The graphics are super cute, and the world is huge. Your generation is absolutely great! I have one question, how do you do to render only faces of blocks that are saw ? Is it some special kind of occlusion culling ?
I'm using greedy meshing so the group of voxels of the same type just become one big texture/collision mesh vs a bunch of smaller voxels.
I'm also using back face culling. So I check if there is another voxel. that isn't air next to it and it will hide the touching faces. If you put a block over water you can actually see it happening with the water. It was a bug I didn't get around to fixing but it is neat to see.
because how slow it is to re mesh I do put a temp block down until it is done re meshing other wise you will see into the world at the location you are placing the block due to back face culling.