A wonderful choice. The main reason I'm barely on this forum as of late? Minecraft. F'ing game just demands to be played. Yeah, I'm with you on the Java thing. Honestly, if you ask me everything should be coded in C (though not C++ or other derivative Cs - I mean hardcore C where you don't get to have a string variable because char arrays are sufficient and have to consciously pay attention to where every single byte of memory you're using goes, and OOP doesn't happen). Anyway, yes, Java's probably to blame largely. On the other hand, given the way the game works, I think it has to keep track of the position of every single block. And I believe you guessed right - every block has position data, at least some (I suspect all) have facing data, and a block-ID (and then that's how they determine textures and other block properties. So at least that's not stored for every single block individually).