I was wondering if it was possible to reduce a huge amount of bandwith and lag if you could cache the SMP world locally, eg. in a singleplayerworld. Whenever chunks would have to be loaded, the server would send an MD5-hash of the chunk, and if the hash would be compared with the local chunk hash, the client (or the server) could determine if a chunk update is needed? A client modification would be needed ofcourse. Would this be a realistic/efficient idea?
yes, that would probably be doable, however even if one block would be changed in the chunk the hash would change and it would have to be sent. Depends on how many chunks on your server are being manipulated and how many are just idle. Imo due to the fact that most servers allow building that this idea will not show much performance increase at all. But it is feasible.
Yeah I see, but if you have eg. An RPG world like MineZ, where the world isn't editable, this concept would reduce the stress on the servers.
There was something like this in the past: http://forums.bukkit.org/threads/mi...dwidth-use-by-caching-chunk-data-1-2-3.15479/
Hmmm, that would be awesome. If I understand this correctly: You can make a mineZ plugin, and that use that stuff what Ivan want to do, and then could you make a server where no block in the world changes, so you could run a server with less GB ram then a normal server? Or has catching of chunks only a bit of advantages?
Yes, because the world itself would be saved at the player, which would reduce a significant amount of bandwidth and possibly a decent amount of CPU usage. Once a player "sees" a location it gets stored on their PC. The next time the player goes there, and the location didn't change, the chunks would be loaded from the disk of the player which puts less stress on the servers itself. Like I said the only back-draw of this is that you need a mod.