タイルだけでなく、頂点で表現するのもありな気がしてきました。
空間を分割したブロックに分けて、各頂点のサイズを小さくするとして、
XYZ各16ビット、フラグに16ビットの1頂点64ビット(8バイト)として、
ブロック管理に必要なサイズを無視した場合の2GBで保持できる頂点数は256M頂点
1平方メートル当たり平均1頂点存在すると仮定した場合、16平方キロメートル。(4キロメートル四方)
ここからブロック管理に必要なメモリや、頂点が構成する3角形を作るためのインデックス用のメモリが必要なので、
4キロメートル四方より狭くなると思いますが。
あと、1平方メートル当たり平均1頂点以上必要になる場合や、地形情報をクライアントに転送する際の転送量や、
サーバーの物理計算の負荷が問題になるっぽいですが、条件を詰めて、もっと詳しく検証しないと分かりませんね。
あと、地形以外のオブジェクトを保持するのに必要なメモリもあります。
それから、人がいない地域が発生するなら、その部分をディスク上にスワップできますが、
人数が増えると誰もアクセスしない地域が無くなると思います。