Let's assume this is a single player game. After changing the settings, the player continues the game for a while, makes a save and turns off the computer. Next time, after starting Factorio but before loading the saved game, the player decides to change settings of the mod. After that, the game is loaded -- but the settings have been reverted to the state in the saved game!
I'm quite at a loss at this point. on_init will only trigger when a new game is started or when a mod is added to an existing game. on_player_joined_game is useful for multiplayer games, but will only be triggered once in singleplayer mode. on_runtime_mod_setting_changed will only trigger for changes made during the game, not between saves. on_configuration_changed won't register runtime-global settings. And running the initialization (which is writing to global) from on_load is tempting, but a very bad idea. So, what other way is there -- apart from reading the settings in on_tick?
