diff --git a/bot_modules/05_main.js b/bot_modules/05_main.js index 778b274..e6b4cc7 100644 --- a/bot_modules/05_main.js +++ b/bot_modules/05_main.js @@ -17,15 +17,18 @@ const LOOT_TIMINGS = { 1: 300000, 2: 1200000, 3: 5400000, 4: 14400000 }; // Delay = loot_option cooldown + random 30-120s human jitter. // This mirrors ModernBot's pattern: run exactly when farms are ready. // ---------------------------------------------------------------- -function scheduleNextFarm() { - const option = lastKnownFarmSettings.loot_option || 1; - const baseMs = LOOT_TIMINGS[option] || 300000; - const jitterMs = randInt(30000, 120000); // +30 to +120 s - const totalMs = baseMs + jitterMs; - log(`⏰ Next auto-farm in ${(totalMs / 60000).toFixed(1)} min (option ${option} + ${(jitterMs/1000).toFixed(0)}s jitter)`); +function scheduleNextFarm(isFirstRun = false) { + let totalMs = 15000; // 15 seconds for the first run to catch already-ready farms + if (!isFirstRun) { + const option = lastKnownFarmSettings.loot_option || 1; + const baseMs = LOOT_TIMINGS[option] || 300000; + const jitterMs = randInt(30000, 120000); // +30 to +120 s + totalMs = baseMs + jitterMs; + } + log(`⏰ Next auto-farm in ${(totalMs / 60000).toFixed(1)} min`); setTimeout(async () => { await autoFarmLoop(); - scheduleNextFarm(); + scheduleNextFarm(false); }, totalMs); } @@ -225,8 +228,8 @@ function boot() { detectCaptcha(); setTimeout(pushState, 5000); jitterLoop(pushState, 60000, 120000); // state sync every 1–2 min - jitterLoop(pollAndExecute, 8000, 18000); // command poll every 8–18 s - scheduleNextFarm(); // auto-farm timer-based (loot_option + 30–120s) + jitterLoop(pollAndExecute, 8000, 18000, 2000); // command poll every 8–18 s, but start in 2s + scheduleNextFarm(true); // auto-farm timer-based (loot_option + 30–120s) jitterLoop(autoBootcampLoop, 720000, 1320000); // bootcamp every 12–22 min jitterLoop(autoRuralTradeLoop, 1500000, 2700000); // rural trade every 25–45 min }