Which data to save and when
We know what can be saved to file, but what should we save? Writing data to a file uses disk space, so we only want to save what we need to. It is best to think: "What information do I want to still have after the server is shut down?" For example, a banking plugin would want to have the balance of each account. As another example, a PvP arena plugin would not care to have the information of an arena match. More likely, the match should simply be canceled as the server is shutting down. When considering our teleportation plugin, we will want to still have the locations of each warp after the server has shut down.
Our next concern is when to save this information. Writing data to files has the potential to lag a server if it is a large amount of data. Therefore, you want to only save your data when you have to. There are three main options for how often to save your data:
Every time the data is modified
Periodically, such as every hour
When the server/plugin is shut...