Should individuals save their own progress on clients or is there another way to save it?
Let’s assume you have a save event that will dump the game state to disk already written.
There’s no reason you can’t trigger that save event from the host.
The reason why this isn’t generally featured in games is more because usually you want to give the player the option to choose a save file or to select some save options.
If a game is silently saved by the host and all the clients also save up, this could be very annoying.
A save will probably cause a framerate drop, right?
Unless the game saves asynchronously, which would still require copying the gamestate to somewhere in RAM temporarily, you probably want the game to pause during saving.
If the host keeps saving, causing everybody to pause their game, they might get annoyed.
Regardless of whether the server or the client triggers a save, you would not necessarily need to check the has authority flag for clients.
You may still want to check the authority flag just in case you make changes in the future.
To illustrate the just in case…
Take Sins of a Solar Empire or Age of Empires as example: anybody who saves temporarily becomes
“server-like” because they need to know everybody else’s resources and the positions of all the AI units.
(I don’t know the source behind these programs, but let’s assume for a moment that not everybody has all the game information at all times [which they probably don’t based on what little experience I have with RTS games, there is too much data to share it all all the time])
If the clients don’t know all this information, then they can’t save the game properly without the server’s help.
If they do know all this information, save it all without regard to authority and you should be good to go!
If you end up changing this in the future such that the clients don’t know all the information, you’ll be glad you have the has authority flag so you know where to look to request a packet of the most up to date information from the server.