require("production-stats") require("pollution-stats") tickInterval = tonumber(settings.global["factorio-prometheus-exporter-tick-interval"].value) or 300 udpAddress = tonumber(settings.startup["factorio-prometheus-exporter-udp-address"].value) or 52555 serverIndex = 1 if game.is_multiplayer() then serverIndex = 0 end -- Register the handler for the player movement event --script.on_event(defines.events.on_player_changed_position, on_player_moved) script.on_event(defines.events.on_player_died, function(event) local player = game.get_player(event.player_index) storage.playerDeathCount[event.player_index] = (storage.playerDeathCount[event.player_index] or 0) + 1 end) script.on_event(defines.events.on_player_joined_game, function(event) local player = game.get_player(event.player_index) if not player then return end local index = event.player_index helpers.send_udp(udpAddress, ("player-join %s %d"):format(player.name, player.index),index) end) script.on_event(defines.events.on_runtime_mod_setting_changed, function(event) if event.setting == "factorio-prometheus-exporter-tick-interval" then tickInterval = settings.global["factorio-prometheus-exporter-tick-interval"].value end end) --script.on_event(defines.events.on_player_joined_game, on_player_joined) --script.on_nth_tick(300, SendSurfaceStats) --script.on_event(defines.events.on_tick, SendSurfaceStats) script.on_nth_tick(tickInterval, SendProductionStats) script.on_nth_tick(tickInterval, SendFluidProductionStats) script.on_nth_tick(tickInterval, GetPollutionStats)