Minecraft is a video game that has a very large community around modding:
For example, some mods called "shaders" improve the graphic qualities of the game:
Wanting to make my own contribution, I started to develop some mods for the game. I then realized that there was, almost every time, a tedious task to perform: client/server data synchronization. This task is necessary even if we don’t want to use the mod in multiplayer, because Minecraft is built on a client/server architecture, so even when one is playing alone, a local server runs.
I then developed the mod "DBSynchronizer" which is completely transparent for the player, but which is a library for the other modders.
This library provides access to a lightweight key-value database stored in RAM. The data stored there is automatically synchronized between the server and the clients. The data can also be stored automatically on game save.
Quick example for storing an integer:
DatabaseGetter.getInstance(MOD_ID).getPersistentFolder().setInt("an integer", 42);
DBSyncronizer is available for download here and a tutorial is available here (in French).