From 0147851e7d30fdbd3837986dbc4ac046a722cedf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Grie=C3=9Fhaber?= Date: Sat, 3 Jan 2026 17:25:52 +0100 Subject: [PATCH] Add player death causes tracking and update version to 0.1.17 --- control.lua | 1 + game-stats.lua | 11 +++++++++++ info.json | 2 +- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/control.lua b/control.lua index 70d6ce0..a5d0d89 100644 --- a/control.lua +++ b/control.lua @@ -190,6 +190,7 @@ function SendGameStats() returnParts[#returnParts+1] = GetRocketsLaunched() returnParts[#returnParts+1] = GetPlayerTime() returnParts[#returnParts+1] = GetPlayerDeaths() + returnParts[#returnParts+1] = GetPlayerDeathCauses() returnParts[#returnParts+1] = GetPlayerKills() returnParts[#returnParts+1] = GetPlayerEntityStats() helpers.send_udp(udpAddress, table.concat(returnParts, "\n"), serverIndex) diff --git a/game-stats.lua b/game-stats.lua index a982a2d..212c1b1 100644 --- a/game-stats.lua +++ b/game-stats.lua @@ -69,4 +69,15 @@ function GetPlayerDeaths() deathParts[#deathParts+1] = ("%s:%d:%d"):format(player.name, player.index, storage.playerDeathCount[player.index]or 0) end return table.concat(deathParts, "\n") +end + +function GetPlayerDeathCauses() + local deathParts = {} + deathParts[#deathParts+1] = "---player-death-cause---\n" + for playerIndex,deathCauses in pairs(storage.playerDeathCause) do + for causeName, causeCount in pairs(deathCauses) do + deathParts[#deathParts+1] = ("%s:%d:%s:%d"):format(game.players[playerIndex].name,playerIndex,causeName,causeCount) + end + end + return table.concat(deathParts,"\n") end \ No newline at end of file diff --git a/info.json b/info.json index 84010e3..86ae913 100644 --- a/info.json +++ b/info.json @@ -1,6 +1,6 @@ { "name": "factorio-metrics-exporter", - "version": "0.1.16", + "version": "0.1.17", "title": "Prometheus Metrics Exporter", "author": "Jan Grießhaber", "contact": "jan@griesshaber.systems",