Jump to content

Adding data to loaded chunks, synced between client and server


Recommended Posts

So, I am working on a mod which holds a set of shorts for each loaded chunk. When a chunk is saved it saves the data to the NBT in ChunkDataEvent.Save and when one is loaded it loads the data from the NBT in ChunkDataEvent.Load, or if there is none yet generates a new set.


My original client/server scheme was for the Server to hold the data for all the loaded chunks, perform updates (the chunks interact and the values change) and periodically send the relevant set of data to each player. The Server would also handle loading and saving the data as players move between chunks.


The Client on the other hand would hold a static (i.e. does not update apart from syncing with the server) version of the relevant data, which can be queried by anything clientside just like on the server side. The primary difference here is that all 'writes' to the data are done serverside.


However, I then noticed that ChunkDataEvents are only called clientside! This not only messed up my scheme (clients would need to report to the server which chunks to load/save/unload) but also seemed counterintuitive as surely it's the server that handles world loading and saving (which should include ChunkDataEvents).


I am now in need of help redesigning my client/server scheme.

"The hypothesis of God gives an incomparably absolute opportunity to understand everything and know absolutely nothing. Give man an extremely simplified system of the world and explain every phenomenon away on the basis of that system." - Arkady/Boris Strugatsky


Creator of Advanced Power Systems for BuildCraft

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Create New...

Important Information

By using this site, you agree to our Terms of Use.