From d70526fdc681bbe9d46ba4e3030e6f628fc1e674 Mon Sep 17 00:00:00 2001 From: Haluzer Date: Wed, 2 Sep 2026 21:14:40 +0100 Subject: [PATCH 1/8] Update plugin.json --- src/main/resources/plugin.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/resources/plugin.json b/src/main/resources/plugin.json index f8d30a0e..d41366fa 100644 --- a/src/main/resources/plugin.json +++ b/src/main/resources/plugin.json @@ -19,8 +19,9 @@ "dev.shared.orbithelper.behaviours.fast_travel.FastTravel", "dev.shared.do_gamer.module.simple_galaxy_gate.SimpleGalaxyGate", "dev.shared.do_gamer.task.autobuy.Autobuy", - "dev.shared.halizeur.log_overlay.LogOverlay" + "dev.shared.halizeur.log_overlay.LogOverlay", + "dev.shared.halizeur.revive_loop_watchdog.ReviveLoopWatchdog" ], "update": "https://raw.githubusercontent.com/Darkbot-Plugins/SharedPlugin/main/src/main/resources/plugin.json", "download": "https://github.com/Darkbot-Plugins/SharedPlugin/releases/latest/download/SharedPlugin.jar" -} \ No newline at end of file +} From e257f2878d9867dbb599b88291a30238a65da434 Mon Sep 17 00:00:00 2001 From: Haluzer Date: Sun, 6 Sep 2026 20:09:46 +0100 Subject: [PATCH 2/8] Create ReviveLoopWatchdog.java --- .../ReviveLoopWatchdog.java | 104 ++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 src/main/java/dev/shared/haluzer/revive_loop_watchdog/ReviveLoopWatchdog.java diff --git a/src/main/java/dev/shared/haluzer/revive_loop_watchdog/ReviveLoopWatchdog.java b/src/main/java/dev/shared/haluzer/revive_loop_watchdog/ReviveLoopWatchdog.java new file mode 100644 index 00000000..564a6602 --- /dev/null +++ b/src/main/java/dev/shared/haluzer/revive_loop_watchdog/ReviveLoopWatchdog.java @@ -0,0 +1,104 @@ +package dev.shared.haluzer.revive_loop_watchdog; + +import eu.darkbot.api.config.ConfigSetting; +import eu.darkbot.api.config.annotations.Configuration; +import eu.darkbot.api.config.annotations.Number; +import eu.darkbot.api.extensions.Behavior; +import eu.darkbot.api.extensions.Configurable; +import eu.darkbot.api.extensions.Feature; +import eu.darkbot.api.managers.BotAPI; +import eu.darkbot.api.managers.HeroAPI; +import eu.darkbot.api.managers.RepairAPI; + +import java.time.Instant; +import java.time.Duration; +import java.time.format.DateTimeFormatter; +import java.time.ZoneId; + +@Feature(name = "Revive Loop Watchdog", description = + "Detects the stuck-on-revive refresh loop bug, pauses the bot, and auto-resumes once it recovers.", + enabledByDefault = true) +public class ReviveLoopWatchdog implements Behavior, Configurable { + + private static final DateTimeFormatter TIME_FORMAT = + DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss").withZone(ZoneId.systemDefault()); + + private final HeroAPI hero; + private final BotAPI bot; + private final RepairAPI repair; + + private Config config = new Config(); + + private Instant deadSince = null; + private boolean pausedByWatchdog = false; + + public ReviveLoopWatchdog(HeroAPI hero, BotAPI bot, RepairAPI repair) { + this.hero = hero; + this.bot = bot; + this.repair = repair; + } + + @Configuration("revive_loop_watchdog.config") + public static class Config { + @Number(min = 1, max = 30, step = 1) + public int STUCK_THRESHOLD_MINUTES = 3; + } + + @Override + public void setConfig(ConfigSetting config) { + this.config = config.getValue(); + } + + @Override + public void onTickBehavior() { + deadSince = null; + } + + @Override + public void onStoppedBehavior() { + if (pausedByWatchdog) { + checkForRecovery(); + return; + } + + if (repair.isDestroyed()) { + if (deadSince == null) { + deadSince = Instant.now(); + } + + long stuckMinutes = Duration.between(deadSince, Instant.now()).toMinutes(); + if (stuckMinutes >= config.STUCK_THRESHOLD_MINUTES) { + pauseForStuckLoop(stuckMinutes); + } + } else { + deadSince = null; + } + } + + private void pauseForStuckLoop(long stuckMinutes) { + if (!bot.isRunning()) { + return; + } + + log("Ship has been destroyed for " + stuckMinutes + "+ minute(s) with no successful revive. " + + "Assuming the known DarkBot stuck-on-revive refresh loop bug. Pausing bot to stop wasted refreshing."); + bot.setRunning(false); + pausedByWatchdog = true; + } + + private void checkForRecovery() { + boolean loaded = hero.getLocationInfo() != null && hero.getLocationInfo().isInitialized(); + boolean alive = !repair.isDestroyed(); + + if (loaded && alive) { + log("Game has finished loading and ship is confirmed alive again. Resuming bot automatically."); + pausedByWatchdog = false; + deadSince = null; + bot.setRunning(true); + } + } + + private void log(String message) { + System.out.println("[" + TIME_FORMAT.format(Instant.now()) + " | ReviveLoopWatchdog] " + message); + } +} From b7aa486c3e1c5f0fa80728c7eab903aa2bc7c639 Mon Sep 17 00:00:00 2001 From: Haluzer Date: Sun, 6 Sep 2026 20:13:36 +0100 Subject: [PATCH 3/8] Update plugin.json --- src/main/resources/plugin.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/plugin.json b/src/main/resources/plugin.json index d41366fa..b490435b 100644 --- a/src/main/resources/plugin.json +++ b/src/main/resources/plugin.json @@ -20,7 +20,7 @@ "dev.shared.do_gamer.module.simple_galaxy_gate.SimpleGalaxyGate", "dev.shared.do_gamer.task.autobuy.Autobuy", "dev.shared.halizeur.log_overlay.LogOverlay", - "dev.shared.halizeur.revive_loop_watchdog.ReviveLoopWatchdog" + "dev.shared.haluzer.revive_loop_watchdog.ReviveLoopWatchdog" ], "update": "https://raw.githubusercontent.com/Darkbot-Plugins/SharedPlugin/main/src/main/resources/plugin.json", "download": "https://github.com/Darkbot-Plugins/SharedPlugin/releases/latest/download/SharedPlugin.jar" From 3a13d93b7c34d7b5cda48638672e78b81c123e81 Mon Sep 17 00:00:00 2001 From: Haluzer Date: Tue, 8 Sep 2026 20:12:02 +0100 Subject: [PATCH 4/8] Rename halizeur to haluzer --- README.md | 2 +- .../{halizeur => haluzer}/log_overlay/LogOverlay.java | 2 +- .../{halizeur => haluzer}/log_overlay/LogOverlayConfig.java | 6 +++--- src/main/resources/dev/shared/lang/strings_bg.properties | 6 +++--- src/main/resources/dev/shared/lang/strings_cs.properties | 6 +++--- src/main/resources/dev/shared/lang/strings_de.properties | 6 +++--- src/main/resources/dev/shared/lang/strings_el.properties | 6 +++--- src/main/resources/dev/shared/lang/strings_en.properties | 6 +++--- src/main/resources/dev/shared/lang/strings_es.properties | 6 +++--- src/main/resources/dev/shared/lang/strings_fr.properties | 6 +++--- src/main/resources/dev/shared/lang/strings_hu.properties | 6 +++--- src/main/resources/dev/shared/lang/strings_it.properties | 6 +++--- src/main/resources/dev/shared/lang/strings_lt.properties | 6 +++--- src/main/resources/dev/shared/lang/strings_pl.properties | 6 +++--- src/main/resources/dev/shared/lang/strings_pt.properties | 6 +++--- src/main/resources/dev/shared/lang/strings_ro.properties | 6 +++--- src/main/resources/dev/shared/lang/strings_ru.properties | 6 +++--- src/main/resources/dev/shared/lang/strings_tr.properties | 6 +++--- src/main/resources/dev/shared/lang/strings_uk.properties | 6 +++--- src/main/resources/plugin.json | 2 +- 20 files changed, 54 insertions(+), 54 deletions(-) rename src/main/java/dev/shared/{halizeur => haluzer}/log_overlay/LogOverlay.java (99%) rename src/main/java/dev/shared/{halizeur => haluzer}/log_overlay/LogOverlayConfig.java (57%) diff --git a/README.md b/README.md index 5ef98cae..18e44cb9 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,7 @@ We will seek to implement CI/CD in the repository so that developers have a good - Orbit Helper Quick Login: Adds a button to navigate to Orbit Helper from the menu. By @orbithelper - Simple Galaxy Gate: Supports ABG, Delta, Epsilon, Zeta, Hades, Kuiper, LoW, Invasion, Mimesis, EBG, GoP, Treacherous, DSE, Fiesta, Trinity and Voyagers. By @do-gamer - Autobuy: Automatically buys boosters and special items from the shop at a configured interval. By @do-gamer -- Log Overlay: Displays the latest in-game log messages on the canvas (top-center, auto-fade after 5s). Built-in keyword whitelist limits the displayed lines to gains and errors so the canvas does not get cluttered. By @Halizeur +- Log Overlay: Displays the latest in-game log messages on the canvas (top-center, auto-fade after 5s). Built-in keyword whitelist limits the displayed lines to gains and errors so the canvas does not get cluttered. By @Haluzer ## Contributing diff --git a/src/main/java/dev/shared/halizeur/log_overlay/LogOverlay.java b/src/main/java/dev/shared/haluzer/log_overlay/LogOverlay.java similarity index 99% rename from src/main/java/dev/shared/halizeur/log_overlay/LogOverlay.java rename to src/main/java/dev/shared/haluzer/log_overlay/LogOverlay.java index 58d0b882..bf460b8f 100644 --- a/src/main/java/dev/shared/halizeur/log_overlay/LogOverlay.java +++ b/src/main/java/dev/shared/haluzer/log_overlay/LogOverlay.java @@ -1,4 +1,4 @@ -package dev.shared.halizeur.log_overlay; +package dev.shared.haluzer.log_overlay; import java.util.ArrayDeque; import java.util.ArrayList; diff --git a/src/main/java/dev/shared/halizeur/log_overlay/LogOverlayConfig.java b/src/main/java/dev/shared/haluzer/log_overlay/LogOverlayConfig.java similarity index 57% rename from src/main/java/dev/shared/halizeur/log_overlay/LogOverlayConfig.java rename to src/main/java/dev/shared/haluzer/log_overlay/LogOverlayConfig.java index 24c82f36..5a44cd87 100644 --- a/src/main/java/dev/shared/halizeur/log_overlay/LogOverlayConfig.java +++ b/src/main/java/dev/shared/haluzer/log_overlay/LogOverlayConfig.java @@ -1,11 +1,11 @@ -package dev.shared.halizeur.log_overlay; +package dev.shared.haluzer.log_overlay; import eu.darkbot.api.config.annotations.Configuration; import eu.darkbot.api.config.annotations.Option; -@Configuration("halizeur.log_overlay.config") +@Configuration("haluzer.log_overlay.config") public class LogOverlayConfig { - @Option("halizeur.log_overlay.enabled") + @Option("haluzer.log_overlay.enabled") public boolean enabled = false; } diff --git a/src/main/resources/dev/shared/lang/strings_bg.properties b/src/main/resources/dev/shared/lang/strings_bg.properties index ad0559e8..4843aa35 100644 --- a/src/main/resources/dev/shared/lang/strings_bg.properties +++ b/src/main/resources/dev/shared/lang/strings_bg.properties @@ -3,9 +3,9 @@ example.translation=Example translation general.enabled=Активиране -# ----- Halizeur : Log Overlay ----- -halizeur.log_overlay.config=Log Overlay -halizeur.log_overlay.enabled=Enabled +# ----- Haluzer : Log Overlay ----- +haluzer.log_overlay.config=Log Overlay +haluzer.log_overlay.enabled=Enabled do_gamer.simple_healing.hp_repair=Ремонт на HP (Solace, Orcus, Aegis, Hammerclaw) do_gamer.simple_healing.shield_repair=Ремонт на щита (Aegis, Hammerclaw) diff --git a/src/main/resources/dev/shared/lang/strings_cs.properties b/src/main/resources/dev/shared/lang/strings_cs.properties index c0fa10a9..c59b08c0 100644 --- a/src/main/resources/dev/shared/lang/strings_cs.properties +++ b/src/main/resources/dev/shared/lang/strings_cs.properties @@ -3,9 +3,9 @@ example.translation=Example translation general.enabled=Povolit -# ----- Halizeur : Log Overlay ----- -halizeur.log_overlay.config=Log Overlay -halizeur.log_overlay.enabled=Enabled +# ----- Haluzer : Log Overlay ----- +haluzer.log_overlay.config=Log Overlay +haluzer.log_overlay.enabled=Enabled do_gamer.simple_healing.hp_repair=Oprava HP (Solace, Orcus, Aegis, Hammerclaw) do_gamer.simple_healing.shield_repair=Oprava štítu (Aegis, Hammerclaw) diff --git a/src/main/resources/dev/shared/lang/strings_de.properties b/src/main/resources/dev/shared/lang/strings_de.properties index ea443333..24d3b0d3 100644 --- a/src/main/resources/dev/shared/lang/strings_de.properties +++ b/src/main/resources/dev/shared/lang/strings_de.properties @@ -3,9 +3,9 @@ example.translation=Example translation general.enabled=Aktivieren -# ----- Halizeur : Log Overlay ----- -halizeur.log_overlay.config=Log Overlay -halizeur.log_overlay.enabled=Enabled +# ----- Haluzer : Log Overlay ----- +haluzer.log_overlay.config=Log Overlay +haluzer.log_overlay.enabled=Enabled do_gamer.simple_healing.hp_repair=HP-Reparatur (Solace, Orcus, Aegis, Hammerclaw) do_gamer.simple_healing.shield_repair=Schildreparatur (Aegis, Hammerclaw) diff --git a/src/main/resources/dev/shared/lang/strings_el.properties b/src/main/resources/dev/shared/lang/strings_el.properties index dc664545..1c07bf4a 100644 --- a/src/main/resources/dev/shared/lang/strings_el.properties +++ b/src/main/resources/dev/shared/lang/strings_el.properties @@ -3,9 +3,9 @@ example.translation=Example translation general.enabled=Ενεργοποίηση -# ----- Halizeur : Log Overlay ----- -halizeur.log_overlay.config=Log Overlay -halizeur.log_overlay.enabled=Enabled +# ----- Haluzer : Log Overlay ----- +haluzer.log_overlay.config=Log Overlay +haluzer.log_overlay.enabled=Enabled do_gamer.simple_healing.hp_repair=Επισκευή HP (Solace, Orcus, Aegis, Hammerclaw) do_gamer.simple_healing.shield_repair=Επισκευή ασπίδας (Aegis, Hammerclaw) diff --git a/src/main/resources/dev/shared/lang/strings_en.properties b/src/main/resources/dev/shared/lang/strings_en.properties index 35da6b6d..eecd6d20 100644 --- a/src/main/resources/dev/shared/lang/strings_en.properties +++ b/src/main/resources/dev/shared/lang/strings_en.properties @@ -3,9 +3,9 @@ example.translation=Example translation general.enabled=Enable -# ----- Halizeur : Log Overlay ----- -halizeur.log_overlay.config=Log Overlay -halizeur.log_overlay.enabled=Enabled +# ----- Haluzer : Log Overlay ----- +haluzer.log_overlay.config=Log Overlay +haluzer.log_overlay.enabled=Enabled do_gamer.simple_healing.hp_repair=HP Repair (Solace, Orcus, Aegis, Hammerclaw) do_gamer.simple_healing.shield_repair=Shield Repair (Aegis, Hammerclaw) diff --git a/src/main/resources/dev/shared/lang/strings_es.properties b/src/main/resources/dev/shared/lang/strings_es.properties index 5a072643..8b4839f0 100644 --- a/src/main/resources/dev/shared/lang/strings_es.properties +++ b/src/main/resources/dev/shared/lang/strings_es.properties @@ -3,9 +3,9 @@ example.translation=Example translation general.enabled=Activar -# ----- Halizeur : Log Overlay ----- -halizeur.log_overlay.config=Log Overlay -halizeur.log_overlay.enabled=Enabled +# ----- Haluzer : Log Overlay ----- +haluzer.log_overlay.config=Log Overlay +haluzer.log_overlay.enabled=Enabled do_gamer.simple_healing.hp_repair=Reparación de HP (Solace, Orcus, Aegis, Hammerclaw) do_gamer.simple_healing.shield_repair=Reparación de escudo (Aegis, Hammerclaw) diff --git a/src/main/resources/dev/shared/lang/strings_fr.properties b/src/main/resources/dev/shared/lang/strings_fr.properties index 09409cb8..35f3208b 100644 --- a/src/main/resources/dev/shared/lang/strings_fr.properties +++ b/src/main/resources/dev/shared/lang/strings_fr.properties @@ -3,9 +3,9 @@ example.translation=Example translation general.enabled=Activer -# ----- Halizeur : Log Overlay ----- -halizeur.log_overlay.config=Log Overlay -halizeur.log_overlay.enabled=Activé +# ----- Haluzer : Log Overlay ----- +haluzer.log_overlay.config=Log Overlay +haluzer.log_overlay.enabled=Activé do_gamer.simple_healing.hp_repair=Réparation des PV (Solace, Orcus, Aegis, Hammerclaw) do_gamer.simple_healing.shield_repair=Réparation du bouclier (Aegis, Hammerclaw) diff --git a/src/main/resources/dev/shared/lang/strings_hu.properties b/src/main/resources/dev/shared/lang/strings_hu.properties index f9275c97..6ced006c 100644 --- a/src/main/resources/dev/shared/lang/strings_hu.properties +++ b/src/main/resources/dev/shared/lang/strings_hu.properties @@ -3,9 +3,9 @@ example.translation=Example translation general.enabled=Engedélyezés -# ----- Halizeur : Log Overlay ----- -halizeur.log_overlay.config=Log Overlay -halizeur.log_overlay.enabled=Enabled +# ----- Haluzer : Log Overlay ----- +haluzer.log_overlay.config=Log Overlay +haluzer.log_overlay.enabled=Enabled do_gamer.simple_healing.hp_repair=HP javítás (Solace, Orcus, Aegis, Hammerclaw) do_gamer.simple_healing.shield_repair=Pajzs javítás (Aegis, Hammerclaw) diff --git a/src/main/resources/dev/shared/lang/strings_it.properties b/src/main/resources/dev/shared/lang/strings_it.properties index 50997394..f80e4dcf 100644 --- a/src/main/resources/dev/shared/lang/strings_it.properties +++ b/src/main/resources/dev/shared/lang/strings_it.properties @@ -3,9 +3,9 @@ example.translation=Example translation general.enabled=Abilita -# ----- Halizeur : Log Overlay ----- -halizeur.log_overlay.config=Log Overlay -halizeur.log_overlay.enabled=Enabled +# ----- Haluzer : Log Overlay ----- +haluzer.log_overlay.config=Log Overlay +haluzer.log_overlay.enabled=Enabled do_gamer.simple_healing.hp_repair=Riparazione HP (Solace, Orcus, Aegis, Hammerclaw) do_gamer.simple_healing.shield_repair=Riparazione scudo (Aegis, Hammerclaw) diff --git a/src/main/resources/dev/shared/lang/strings_lt.properties b/src/main/resources/dev/shared/lang/strings_lt.properties index c0f555e7..c19b653f 100644 --- a/src/main/resources/dev/shared/lang/strings_lt.properties +++ b/src/main/resources/dev/shared/lang/strings_lt.properties @@ -3,9 +3,9 @@ example.translation=Example translation general.enabled=Įjungti -# ----- Halizeur : Log Overlay ----- -halizeur.log_overlay.config=Log Overlay -halizeur.log_overlay.enabled=Enabled +# ----- Haluzer : Log Overlay ----- +haluzer.log_overlay.config=Log Overlay +haluzer.log_overlay.enabled=Enabled do_gamer.simple_healing.hp_repair=HP taisymas (Solace, Orcus, Aegis, Hammerclaw) do_gamer.simple_healing.shield_repair=Skydo taisymas (Aegis, Hammerclaw) diff --git a/src/main/resources/dev/shared/lang/strings_pl.properties b/src/main/resources/dev/shared/lang/strings_pl.properties index 97d8225f..6c7a0acf 100644 --- a/src/main/resources/dev/shared/lang/strings_pl.properties +++ b/src/main/resources/dev/shared/lang/strings_pl.properties @@ -3,9 +3,9 @@ example.translation=Example translation general.enabled=Włącz -# ----- Halizeur : Log Overlay ----- -halizeur.log_overlay.config=Log Overlay -halizeur.log_overlay.enabled=Enabled +# ----- Haluzer : Log Overlay ----- +haluzer.log_overlay.config=Log Overlay +haluzer.log_overlay.enabled=Enabled do_gamer.simple_healing.hp_repair=Naprawa HP (Solace, Orcus, Aegis, Hammerclaw) do_gamer.simple_healing.shield_repair=Naprawa osłon (Aegis, Hammerclaw) diff --git a/src/main/resources/dev/shared/lang/strings_pt.properties b/src/main/resources/dev/shared/lang/strings_pt.properties index 7052043b..f5839a22 100644 --- a/src/main/resources/dev/shared/lang/strings_pt.properties +++ b/src/main/resources/dev/shared/lang/strings_pt.properties @@ -3,9 +3,9 @@ example.translation=Example translation general.enabled=Ativar -# ----- Halizeur : Log Overlay ----- -halizeur.log_overlay.config=Log Overlay -halizeur.log_overlay.enabled=Enabled +# ----- Haluzer : Log Overlay ----- +haluzer.log_overlay.config=Log Overlay +haluzer.log_overlay.enabled=Enabled do_gamer.simple_healing.hp_repair=Reparo de HP (Solace, Orcus, Aegis, Hammerclaw) do_gamer.simple_healing.shield_repair=Reparo de escudo (Aegis, Hammerclaw) diff --git a/src/main/resources/dev/shared/lang/strings_ro.properties b/src/main/resources/dev/shared/lang/strings_ro.properties index 213aa12d..aeedf921 100644 --- a/src/main/resources/dev/shared/lang/strings_ro.properties +++ b/src/main/resources/dev/shared/lang/strings_ro.properties @@ -3,9 +3,9 @@ example.translation=Example translation general.enabled=Activează -# ----- Halizeur : Log Overlay ----- -halizeur.log_overlay.config=Log Overlay -halizeur.log_overlay.enabled=Enabled +# ----- Haluzer : Log Overlay ----- +haluzer.log_overlay.config=Log Overlay +haluzer.log_overlay.enabled=Enabled do_gamer.simple_healing.hp_repair=Reparare HP (Solace, Orcus, Aegis, Hammerclaw) do_gamer.simple_healing.shield_repair=Reparare scut (Aegis, Hammerclaw) diff --git a/src/main/resources/dev/shared/lang/strings_ru.properties b/src/main/resources/dev/shared/lang/strings_ru.properties index 9c369ac6..76c828ed 100644 --- a/src/main/resources/dev/shared/lang/strings_ru.properties +++ b/src/main/resources/dev/shared/lang/strings_ru.properties @@ -3,9 +3,9 @@ example.translation=Example translation general.enabled=Включить -# ----- Halizeur : Log Overlay ----- -halizeur.log_overlay.config=Log Overlay -halizeur.log_overlay.enabled=Enabled +# ----- Haluzer : Log Overlay ----- +haluzer.log_overlay.config=Log Overlay +haluzer.log_overlay.enabled=Enabled do_gamer.simple_healing.hp_repair=Ремонт HP (Solace, Orcus, Aegis, Hammerclaw) do_gamer.simple_healing.shield_repair=Ремонт щита (Aegis, Hammerclaw) diff --git a/src/main/resources/dev/shared/lang/strings_tr.properties b/src/main/resources/dev/shared/lang/strings_tr.properties index 4f07a24f..6a179c29 100644 --- a/src/main/resources/dev/shared/lang/strings_tr.properties +++ b/src/main/resources/dev/shared/lang/strings_tr.properties @@ -3,9 +3,9 @@ example.translation=Example translation general.enabled=Etkinleştir -# ----- Halizeur : Log Overlay ----- -halizeur.log_overlay.config=Log Overlay -halizeur.log_overlay.enabled=Enabled +# ----- Haluzer : Log Overlay ----- +haluzer.log_overlay.config=Log Overlay +haluzer.log_overlay.enabled=Enabled do_gamer.simple_healing.hp_repair=HP Onarımı (Solace, Orcus, Aegis, Hammerclaw) do_gamer.simple_healing.shield_repair=Kalkan Onarımı (Aegis, Hammerclaw) diff --git a/src/main/resources/dev/shared/lang/strings_uk.properties b/src/main/resources/dev/shared/lang/strings_uk.properties index 5aef0406..18440744 100644 --- a/src/main/resources/dev/shared/lang/strings_uk.properties +++ b/src/main/resources/dev/shared/lang/strings_uk.properties @@ -3,9 +3,9 @@ example.translation=Example translation general.enabled=Увімкнути -# ----- Halizeur : Log Overlay ----- -halizeur.log_overlay.config=Log Overlay -halizeur.log_overlay.enabled=Enabled +# ----- Haluzer : Log Overlay ----- +haluzer.log_overlay.config=Log Overlay +haluzer.log_overlay.enabled=Enabled do_gamer.simple_healing.hp_repair=Ремонт HP (Solace, Orcus, Aegis, Hammerclaw) do_gamer.simple_healing.shield_repair=Ремонт щита (Aegis, Hammerclaw) diff --git a/src/main/resources/plugin.json b/src/main/resources/plugin.json index b490435b..a5edf927 100644 --- a/src/main/resources/plugin.json +++ b/src/main/resources/plugin.json @@ -19,7 +19,7 @@ "dev.shared.orbithelper.behaviours.fast_travel.FastTravel", "dev.shared.do_gamer.module.simple_galaxy_gate.SimpleGalaxyGate", "dev.shared.do_gamer.task.autobuy.Autobuy", - "dev.shared.halizeur.log_overlay.LogOverlay", + "dev.shared.haluzer.log_overlay.LogOverlay", "dev.shared.haluzer.revive_loop_watchdog.ReviveLoopWatchdog" ], "update": "https://raw.githubusercontent.com/Darkbot-Plugins/SharedPlugin/main/src/main/resources/plugin.json", From cc8543a28da810e0d56df4cc5fdbccb64f437a78 Mon Sep 17 00:00:00 2001 From: Haluzer Date: Tue, 8 Sep 2026 20:21:33 +0100 Subject: [PATCH 5/8] Update ReviveLoopWatchdog.java --- .../ReviveLoopWatchdog.java | 22 ++++++++----------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/src/main/java/dev/shared/haluzer/revive_loop_watchdog/ReviveLoopWatchdog.java b/src/main/java/dev/shared/haluzer/revive_loop_watchdog/ReviveLoopWatchdog.java index 564a6602..7c53e41f 100644 --- a/src/main/java/dev/shared/haluzer/revive_loop_watchdog/ReviveLoopWatchdog.java +++ b/src/main/java/dev/shared/haluzer/revive_loop_watchdog/ReviveLoopWatchdog.java @@ -12,16 +12,14 @@ import java.time.Instant; import java.time.Duration; -import java.time.format.DateTimeFormatter; -import java.time.ZoneId; +import java.util.logging.Logger; @Feature(name = "Revive Loop Watchdog", description = "Detects the stuck-on-revive refresh loop bug, pauses the bot, and auto-resumes once it recovers.", enabledByDefault = true) public class ReviveLoopWatchdog implements Behavior, Configurable { - private static final DateTimeFormatter TIME_FORMAT = - DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss").withZone(ZoneId.systemDefault()); + private static final Logger LOGGER = Logger.getLogger(ReviveLoopWatchdog.class.getName()); private final HeroAPI hero; private final BotAPI bot; @@ -41,7 +39,7 @@ public ReviveLoopWatchdog(HeroAPI hero, BotAPI bot, RepairAPI repair) { @Configuration("revive_loop_watchdog.config") public static class Config { @Number(min = 1, max = 30, step = 1) - public int STUCK_THRESHOLD_MINUTES = 3; + public int stuckThresholdMinutes = 3; } @Override @@ -67,7 +65,7 @@ public void onStoppedBehavior() { } long stuckMinutes = Duration.between(deadSince, Instant.now()).toMinutes(); - if (stuckMinutes >= config.STUCK_THRESHOLD_MINUTES) { + if (stuckMinutes >= config.stuckThresholdMinutes) { pauseForStuckLoop(stuckMinutes); } } else { @@ -80,8 +78,9 @@ private void pauseForStuckLoop(long stuckMinutes) { return; } - log("Ship has been destroyed for " + stuckMinutes + "+ minute(s) with no successful revive. " + - "Assuming the known DarkBot stuck-on-revive refresh loop bug. Pausing bot to stop wasted refreshing."); + LOGGER.info("Revive Loop Watchdog: ship has been destroyed for " + stuckMinutes + + "+ minute(s) with no successful revive. Assuming the known DarkBot stuck-on-revive " + + "refresh loop bug. Pausing bot to stop wasted refreshing."); bot.setRunning(false); pausedByWatchdog = true; } @@ -91,14 +90,11 @@ private void checkForRecovery() { boolean alive = !repair.isDestroyed(); if (loaded && alive) { - log("Game has finished loading and ship is confirmed alive again. Resuming bot automatically."); + LOGGER.info("Revive Loop Watchdog: game has finished loading and ship is confirmed alive again. " + + "Resuming bot automatically."); pausedByWatchdog = false; deadSince = null; bot.setRunning(true); } } - - private void log(String message) { - System.out.println("[" + TIME_FORMAT.format(Instant.now()) + " | ReviveLoopWatchdog] " + message); - } } From b6cfcec02f63f29b39601a75260849ac7d81137d Mon Sep 17 00:00:00 2001 From: Haluzer Date: Fri, 11 Sep 2026 08:23:10 +0100 Subject: [PATCH 6/8] Update ReviveLoopWatchdog.java --- .../revive_loop_watchdog/ReviveLoopWatchdog.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/main/java/dev/shared/haluzer/revive_loop_watchdog/ReviveLoopWatchdog.java b/src/main/java/dev/shared/haluzer/revive_loop_watchdog/ReviveLoopWatchdog.java index 7c53e41f..5cf497c5 100644 --- a/src/main/java/dev/shared/haluzer/revive_loop_watchdog/ReviveLoopWatchdog.java +++ b/src/main/java/dev/shared/haluzer/revive_loop_watchdog/ReviveLoopWatchdog.java @@ -12,6 +12,7 @@ import java.time.Instant; import java.time.Duration; +import java.util.logging.Level; import java.util.logging.Logger; @Feature(name = "Revive Loop Watchdog", description = @@ -78,9 +79,9 @@ private void pauseForStuckLoop(long stuckMinutes) { return; } - LOGGER.info("Revive Loop Watchdog: ship has been destroyed for " + stuckMinutes + - "+ minute(s) with no successful revive. Assuming the known DarkBot stuck-on-revive " + - "refresh loop bug. Pausing bot to stop wasted refreshing."); + LOGGER.log(Level.INFO, "Revive Loop Watchdog: ship has been destroyed for {0}+ minute(s) with no " + + "successful revive. Assuming the known DarkBot stuck-on-revive refresh loop bug. " + + "Pausing bot to stop wasted refreshing.", stuckMinutes); bot.setRunning(false); pausedByWatchdog = true; } @@ -90,8 +91,8 @@ private void checkForRecovery() { boolean alive = !repair.isDestroyed(); if (loaded && alive) { - LOGGER.info("Revive Loop Watchdog: game has finished loading and ship is confirmed alive again. " + - "Resuming bot automatically."); + LOGGER.info("Revive Loop Watchdog: game has finished loading and ship is confirmed alive again. " + + "Resuming bot automatically."); pausedByWatchdog = false; deadSince = null; bot.setRunning(true); From 54b265f4356fac06029e4a54dc0368c3f7312f5b Mon Sep 17 00:00:00 2001 From: Haluzer Date: Sat, 12 Sep 2026 09:41:57 +0100 Subject: [PATCH 7/8] Update ReviveLoopWatchdog.java --- .../revive_loop_watchdog/ReviveLoopWatchdog.java | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/src/main/java/dev/shared/haluzer/revive_loop_watchdog/ReviveLoopWatchdog.java b/src/main/java/dev/shared/haluzer/revive_loop_watchdog/ReviveLoopWatchdog.java index 5cf497c5..31f0fb4e 100644 --- a/src/main/java/dev/shared/haluzer/revive_loop_watchdog/ReviveLoopWatchdog.java +++ b/src/main/java/dev/shared/haluzer/revive_loop_watchdog/ReviveLoopWatchdog.java @@ -3,6 +3,7 @@ import eu.darkbot.api.config.ConfigSetting; import eu.darkbot.api.config.annotations.Configuration; import eu.darkbot.api.config.annotations.Number; +import eu.darkbot.api.config.annotations.Option; import eu.darkbot.api.extensions.Behavior; import eu.darkbot.api.extensions.Configurable; import eu.darkbot.api.extensions.Feature; @@ -12,16 +13,12 @@ import java.time.Instant; import java.time.Duration; -import java.util.logging.Level; -import java.util.logging.Logger; @Feature(name = "Revive Loop Watchdog", description = "Detects the stuck-on-revive refresh loop bug, pauses the bot, and auto-resumes once it recovers.", - enabledByDefault = true) + enabledByDefault = false) public class ReviveLoopWatchdog implements Behavior, Configurable { - private static final Logger LOGGER = Logger.getLogger(ReviveLoopWatchdog.class.getName()); - private final HeroAPI hero; private final BotAPI bot; private final RepairAPI repair; @@ -39,6 +36,7 @@ public ReviveLoopWatchdog(HeroAPI hero, BotAPI bot, RepairAPI repair) { @Configuration("revive_loop_watchdog.config") public static class Config { + @Option("revive_loop_watchdog.config.stuckthresholdminutes") @Number(min = 1, max = 30, step = 1) public int stuckThresholdMinutes = 3; } @@ -79,9 +77,8 @@ private void pauseForStuckLoop(long stuckMinutes) { return; } - LOGGER.log(Level.INFO, "Revive Loop Watchdog: ship has been destroyed for {0}+ minute(s) with no " - + "successful revive. Assuming the known DarkBot stuck-on-revive refresh loop bug. " - + "Pausing bot to stop wasted refreshing.", stuckMinutes); + System.out.println("Revive Loop Watchdog: ship destroyed for " + stuckMinutes + + "+ minute(s) with no successful revive, pausing bot to stop wasted refreshing."); bot.setRunning(false); pausedByWatchdog = true; } @@ -91,8 +88,7 @@ private void checkForRecovery() { boolean alive = !repair.isDestroyed(); if (loaded && alive) { - LOGGER.info("Revive Loop Watchdog: game has finished loading and ship is confirmed alive again. " - + "Resuming bot automatically."); + System.out.println("Revive Loop Watchdog: game loaded and ship alive again, resuming bot."); pausedByWatchdog = false; deadSince = null; bot.setRunning(true); From ca5f77dc42efad42c2927b9135b24b6cf9201cf4 Mon Sep 17 00:00:00 2001 From: Haluzer Date: Sat, 12 Sep 2026 09:45:24 +0100 Subject: [PATCH 8/8] Add revive loop watchdog i18n keys --- src/main/resources/dev/shared/lang/strings_bg.properties | 5 +++++ src/main/resources/dev/shared/lang/strings_cs.properties | 5 +++++ src/main/resources/dev/shared/lang/strings_de.properties | 5 +++++ src/main/resources/dev/shared/lang/strings_el.properties | 5 +++++ src/main/resources/dev/shared/lang/strings_en.properties | 5 +++++ src/main/resources/dev/shared/lang/strings_es.properties | 5 +++++ src/main/resources/dev/shared/lang/strings_fr.properties | 5 +++++ src/main/resources/dev/shared/lang/strings_hu.properties | 5 +++++ src/main/resources/dev/shared/lang/strings_it.properties | 5 +++++ src/main/resources/dev/shared/lang/strings_lt.properties | 5 +++++ src/main/resources/dev/shared/lang/strings_pl.properties | 5 +++++ src/main/resources/dev/shared/lang/strings_pt.properties | 5 +++++ src/main/resources/dev/shared/lang/strings_ro.properties | 5 +++++ src/main/resources/dev/shared/lang/strings_ru.properties | 5 +++++ src/main/resources/dev/shared/lang/strings_tr.properties | 5 +++++ src/main/resources/dev/shared/lang/strings_uk.properties | 5 +++++ 16 files changed, 80 insertions(+) diff --git a/src/main/resources/dev/shared/lang/strings_bg.properties b/src/main/resources/dev/shared/lang/strings_bg.properties index 4843aa35..4bb1b15b 100644 --- a/src/main/resources/dev/shared/lang/strings_bg.properties +++ b/src/main/resources/dev/shared/lang/strings_bg.properties @@ -3,6 +3,11 @@ example.translation=Example translation general.enabled=Активиране +# ----- Haluzer : Revive Loop Watchdog ----- +revive_loop_watchdog.config=Revive Loop Watchdog +revive_loop_watchdog.config.stuckthresholdminutes=Stuck threshold (min) +revive_loop_watchdog.config.stuckthresholdminutes.desc=Minutes of continuous destruction before the watchdog pauses the bot + # ----- Haluzer : Log Overlay ----- haluzer.log_overlay.config=Log Overlay haluzer.log_overlay.enabled=Enabled diff --git a/src/main/resources/dev/shared/lang/strings_cs.properties b/src/main/resources/dev/shared/lang/strings_cs.properties index c59b08c0..c557f23a 100644 --- a/src/main/resources/dev/shared/lang/strings_cs.properties +++ b/src/main/resources/dev/shared/lang/strings_cs.properties @@ -3,6 +3,11 @@ example.translation=Example translation general.enabled=Povolit +# ----- Haluzer : Revive Loop Watchdog ----- +revive_loop_watchdog.config=Revive Loop Watchdog +revive_loop_watchdog.config.stuckthresholdminutes=Stuck threshold (min) +revive_loop_watchdog.config.stuckthresholdminutes.desc=Minutes of continuous destruction before the watchdog pauses the bot + # ----- Haluzer : Log Overlay ----- haluzer.log_overlay.config=Log Overlay haluzer.log_overlay.enabled=Enabled diff --git a/src/main/resources/dev/shared/lang/strings_de.properties b/src/main/resources/dev/shared/lang/strings_de.properties index 24d3b0d3..90d673b6 100644 --- a/src/main/resources/dev/shared/lang/strings_de.properties +++ b/src/main/resources/dev/shared/lang/strings_de.properties @@ -3,6 +3,11 @@ example.translation=Example translation general.enabled=Aktivieren +# ----- Haluzer : Revive Loop Watchdog ----- +revive_loop_watchdog.config=Revive Loop Watchdog +revive_loop_watchdog.config.stuckthresholdminutes=Stuck threshold (min) +revive_loop_watchdog.config.stuckthresholdminutes.desc=Minutes of continuous destruction before the watchdog pauses the bot + # ----- Haluzer : Log Overlay ----- haluzer.log_overlay.config=Log Overlay haluzer.log_overlay.enabled=Enabled diff --git a/src/main/resources/dev/shared/lang/strings_el.properties b/src/main/resources/dev/shared/lang/strings_el.properties index 1c07bf4a..baf56769 100644 --- a/src/main/resources/dev/shared/lang/strings_el.properties +++ b/src/main/resources/dev/shared/lang/strings_el.properties @@ -3,6 +3,11 @@ example.translation=Example translation general.enabled=Ενεργοποίηση +# ----- Haluzer : Revive Loop Watchdog ----- +revive_loop_watchdog.config=Revive Loop Watchdog +revive_loop_watchdog.config.stuckthresholdminutes=Stuck threshold (min) +revive_loop_watchdog.config.stuckthresholdminutes.desc=Minutes of continuous destruction before the watchdog pauses the bot + # ----- Haluzer : Log Overlay ----- haluzer.log_overlay.config=Log Overlay haluzer.log_overlay.enabled=Enabled diff --git a/src/main/resources/dev/shared/lang/strings_en.properties b/src/main/resources/dev/shared/lang/strings_en.properties index eecd6d20..ed5bf9de 100644 --- a/src/main/resources/dev/shared/lang/strings_en.properties +++ b/src/main/resources/dev/shared/lang/strings_en.properties @@ -3,6 +3,11 @@ example.translation=Example translation general.enabled=Enable +# ----- Haluzer : Revive Loop Watchdog ----- +revive_loop_watchdog.config=Revive Loop Watchdog +revive_loop_watchdog.config.stuckthresholdminutes=Stuck threshold (min) +revive_loop_watchdog.config.stuckthresholdminutes.desc=Minutes of continuous destruction before the watchdog pauses the bot + # ----- Haluzer : Log Overlay ----- haluzer.log_overlay.config=Log Overlay haluzer.log_overlay.enabled=Enabled diff --git a/src/main/resources/dev/shared/lang/strings_es.properties b/src/main/resources/dev/shared/lang/strings_es.properties index 8b4839f0..1e51fc15 100644 --- a/src/main/resources/dev/shared/lang/strings_es.properties +++ b/src/main/resources/dev/shared/lang/strings_es.properties @@ -3,6 +3,11 @@ example.translation=Example translation general.enabled=Activar +# ----- Haluzer : Revive Loop Watchdog ----- +revive_loop_watchdog.config=Revive Loop Watchdog +revive_loop_watchdog.config.stuckthresholdminutes=Stuck threshold (min) +revive_loop_watchdog.config.stuckthresholdminutes.desc=Minutes of continuous destruction before the watchdog pauses the bot + # ----- Haluzer : Log Overlay ----- haluzer.log_overlay.config=Log Overlay haluzer.log_overlay.enabled=Enabled diff --git a/src/main/resources/dev/shared/lang/strings_fr.properties b/src/main/resources/dev/shared/lang/strings_fr.properties index 35f3208b..a2d706fe 100644 --- a/src/main/resources/dev/shared/lang/strings_fr.properties +++ b/src/main/resources/dev/shared/lang/strings_fr.properties @@ -3,6 +3,11 @@ example.translation=Example translation general.enabled=Activer +# ----- Haluzer : Revive Loop Watchdog ----- +revive_loop_watchdog.config=Revive Loop Watchdog +revive_loop_watchdog.config.stuckthresholdminutes=Stuck threshold (min) +revive_loop_watchdog.config.stuckthresholdminutes.desc=Minutes of continuous destruction before the watchdog pauses the bot + # ----- Haluzer : Log Overlay ----- haluzer.log_overlay.config=Log Overlay haluzer.log_overlay.enabled=Activé diff --git a/src/main/resources/dev/shared/lang/strings_hu.properties b/src/main/resources/dev/shared/lang/strings_hu.properties index 6ced006c..e6563c7e 100644 --- a/src/main/resources/dev/shared/lang/strings_hu.properties +++ b/src/main/resources/dev/shared/lang/strings_hu.properties @@ -3,6 +3,11 @@ example.translation=Example translation general.enabled=Engedélyezés +# ----- Haluzer : Revive Loop Watchdog ----- +revive_loop_watchdog.config=Revive Loop Watchdog +revive_loop_watchdog.config.stuckthresholdminutes=Stuck threshold (min) +revive_loop_watchdog.config.stuckthresholdminutes.desc=Minutes of continuous destruction before the watchdog pauses the bot + # ----- Haluzer : Log Overlay ----- haluzer.log_overlay.config=Log Overlay haluzer.log_overlay.enabled=Enabled diff --git a/src/main/resources/dev/shared/lang/strings_it.properties b/src/main/resources/dev/shared/lang/strings_it.properties index f80e4dcf..e35cb39c 100644 --- a/src/main/resources/dev/shared/lang/strings_it.properties +++ b/src/main/resources/dev/shared/lang/strings_it.properties @@ -3,6 +3,11 @@ example.translation=Example translation general.enabled=Abilita +# ----- Haluzer : Revive Loop Watchdog ----- +revive_loop_watchdog.config=Revive Loop Watchdog +revive_loop_watchdog.config.stuckthresholdminutes=Stuck threshold (min) +revive_loop_watchdog.config.stuckthresholdminutes.desc=Minutes of continuous destruction before the watchdog pauses the bot + # ----- Haluzer : Log Overlay ----- haluzer.log_overlay.config=Log Overlay haluzer.log_overlay.enabled=Enabled diff --git a/src/main/resources/dev/shared/lang/strings_lt.properties b/src/main/resources/dev/shared/lang/strings_lt.properties index c19b653f..de814d45 100644 --- a/src/main/resources/dev/shared/lang/strings_lt.properties +++ b/src/main/resources/dev/shared/lang/strings_lt.properties @@ -3,6 +3,11 @@ example.translation=Example translation general.enabled=Įjungti +# ----- Haluzer : Revive Loop Watchdog ----- +revive_loop_watchdog.config=Revive Loop Watchdog +revive_loop_watchdog.config.stuckthresholdminutes=Stuck threshold (min) +revive_loop_watchdog.config.stuckthresholdminutes.desc=Minutes of continuous destruction before the watchdog pauses the bot + # ----- Haluzer : Log Overlay ----- haluzer.log_overlay.config=Log Overlay haluzer.log_overlay.enabled=Enabled diff --git a/src/main/resources/dev/shared/lang/strings_pl.properties b/src/main/resources/dev/shared/lang/strings_pl.properties index 6c7a0acf..5b77c6a8 100644 --- a/src/main/resources/dev/shared/lang/strings_pl.properties +++ b/src/main/resources/dev/shared/lang/strings_pl.properties @@ -3,6 +3,11 @@ example.translation=Example translation general.enabled=Włącz +# ----- Haluzer : Revive Loop Watchdog ----- +revive_loop_watchdog.config=Revive Loop Watchdog +revive_loop_watchdog.config.stuckthresholdminutes=Stuck threshold (min) +revive_loop_watchdog.config.stuckthresholdminutes.desc=Minutes of continuous destruction before the watchdog pauses the bot + # ----- Haluzer : Log Overlay ----- haluzer.log_overlay.config=Log Overlay haluzer.log_overlay.enabled=Enabled diff --git a/src/main/resources/dev/shared/lang/strings_pt.properties b/src/main/resources/dev/shared/lang/strings_pt.properties index f5839a22..1564df2c 100644 --- a/src/main/resources/dev/shared/lang/strings_pt.properties +++ b/src/main/resources/dev/shared/lang/strings_pt.properties @@ -3,6 +3,11 @@ example.translation=Example translation general.enabled=Ativar +# ----- Haluzer : Revive Loop Watchdog ----- +revive_loop_watchdog.config=Revive Loop Watchdog +revive_loop_watchdog.config.stuckthresholdminutes=Stuck threshold (min) +revive_loop_watchdog.config.stuckthresholdminutes.desc=Minutes of continuous destruction before the watchdog pauses the bot + # ----- Haluzer : Log Overlay ----- haluzer.log_overlay.config=Log Overlay haluzer.log_overlay.enabled=Enabled diff --git a/src/main/resources/dev/shared/lang/strings_ro.properties b/src/main/resources/dev/shared/lang/strings_ro.properties index aeedf921..9a2bd425 100644 --- a/src/main/resources/dev/shared/lang/strings_ro.properties +++ b/src/main/resources/dev/shared/lang/strings_ro.properties @@ -3,6 +3,11 @@ example.translation=Example translation general.enabled=Activează +# ----- Haluzer : Revive Loop Watchdog ----- +revive_loop_watchdog.config=Revive Loop Watchdog +revive_loop_watchdog.config.stuckthresholdminutes=Stuck threshold (min) +revive_loop_watchdog.config.stuckthresholdminutes.desc=Minutes of continuous destruction before the watchdog pauses the bot + # ----- Haluzer : Log Overlay ----- haluzer.log_overlay.config=Log Overlay haluzer.log_overlay.enabled=Enabled diff --git a/src/main/resources/dev/shared/lang/strings_ru.properties b/src/main/resources/dev/shared/lang/strings_ru.properties index 76c828ed..9f63487e 100644 --- a/src/main/resources/dev/shared/lang/strings_ru.properties +++ b/src/main/resources/dev/shared/lang/strings_ru.properties @@ -3,6 +3,11 @@ example.translation=Example translation general.enabled=Включить +# ----- Haluzer : Revive Loop Watchdog ----- +revive_loop_watchdog.config=Revive Loop Watchdog +revive_loop_watchdog.config.stuckthresholdminutes=Stuck threshold (min) +revive_loop_watchdog.config.stuckthresholdminutes.desc=Minutes of continuous destruction before the watchdog pauses the bot + # ----- Haluzer : Log Overlay ----- haluzer.log_overlay.config=Log Overlay haluzer.log_overlay.enabled=Enabled diff --git a/src/main/resources/dev/shared/lang/strings_tr.properties b/src/main/resources/dev/shared/lang/strings_tr.properties index 6a179c29..1940c2a0 100644 --- a/src/main/resources/dev/shared/lang/strings_tr.properties +++ b/src/main/resources/dev/shared/lang/strings_tr.properties @@ -3,6 +3,11 @@ example.translation=Example translation general.enabled=Etkinleştir +# ----- Haluzer : Revive Loop Watchdog ----- +revive_loop_watchdog.config=Revive Loop Watchdog +revive_loop_watchdog.config.stuckthresholdminutes=Stuck threshold (min) +revive_loop_watchdog.config.stuckthresholdminutes.desc=Minutes of continuous destruction before the watchdog pauses the bot + # ----- Haluzer : Log Overlay ----- haluzer.log_overlay.config=Log Overlay haluzer.log_overlay.enabled=Enabled diff --git a/src/main/resources/dev/shared/lang/strings_uk.properties b/src/main/resources/dev/shared/lang/strings_uk.properties index 18440744..053f84b2 100644 --- a/src/main/resources/dev/shared/lang/strings_uk.properties +++ b/src/main/resources/dev/shared/lang/strings_uk.properties @@ -3,6 +3,11 @@ example.translation=Example translation general.enabled=Увімкнути +# ----- Haluzer : Revive Loop Watchdog ----- +revive_loop_watchdog.config=Revive Loop Watchdog +revive_loop_watchdog.config.stuckthresholdminutes=Stuck threshold (min) +revive_loop_watchdog.config.stuckthresholdminutes.desc=Minutes of continuous destruction before the watchdog pauses the bot + # ----- Haluzer : Log Overlay ----- haluzer.log_overlay.config=Log Overlay haluzer.log_overlay.enabled=Enabled