From b06b168c5558d43164fa74406e0df157c0ab0541 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 27 Aug 2026 12:49:58 -0500 Subject: [PATCH] codex: fix mining-f2p entry per governor review (bounce fix attempt 1) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Powermine drop loop: model per-slot Dropping of non-stackable ores — drop_run now self-loops (count_item ore > 0 -> drop_run) until the inventory is empty, then back to mine; a6 drops one occupied slot per execution and its params state the iteration contract. - Click cadence: a2 delay was 600-1400ms, below the rune pickaxe 3-tick (1.8s) mining roll — replaced with 2000-4200ms and comment distinguishing the roll interval from translator re-click cadence (bronze 8 ticks = 4.8s note). - Al Kharid survivability: route gate modeled - scorpion is level 14 and attacks players at combat <= 28 (wiki Aggressiveness, 2x rule), so Al Kharid powermine requires combat 29+ or food; new survive state with eat/ retreat actions (a7/a8), hard-failure path (food exhausted + low HP -> failed; death = hard failure, no respawn claim). Banked South-east Varrock route preserved for sub-29 accounts. version 1 -> 2. Validator: 0 errors, 1 pre-existing F2P WARN. --- codex/training/mining-f2p.yaml | 78 ++++++++++++++++++++++++++-------- 1 file changed, 61 insertions(+), 17 deletions(-) diff --git a/codex/training/mining-f2p.yaml b/codex/training/mining-f2p.yaml index 98bfea7..8185e61 100644 --- a/codex/training/mining-f2p.yaml +++ b/codex/training/mining-f2p.yaml @@ -3,7 +3,7 @@ title: Mining (F2P) domain: training tags: [mining, gathering, f2p, skill-training] status: verified -version: 1 +version: 2 # 2: bounce-fix 2026-08-27 — per-slot drop loop, click-cadence model, Al Kharid survivability gate updated: "2026-08-27" # ISO dates must stay quoted — YAML 1.1 parses bare dates to datetime.date summary: > @@ -12,7 +12,10 @@ summary: > wiki's free-to-play training guide is the authoritative progression: clay/copper/tin from level 1, iron 15 (the fast-XP ore), silver 20, coal 30, gold 40, mithril 55, adamantite 70, runite 85. Mining is a staple - low-risk, low-input method with no respawn mechanics in the loop. + low-risk, low-input method with no respawn mechanics in the loop. The Al + Kharid powermine is gated: its level-14 scorpions attack players at combat + level 28 or below (wiki Aggressiveness), so sub-29 accounts carry food or + use the banked South-east Varrock route instead. accounts: membership: f2p # whole ore chain verified F2P via the wiki guide @@ -21,7 +24,7 @@ accounts: requires_other: - "Best-tier F2P pickaxe available (bronze -> rune; equip it to save an inventory slot)" - "Bank route from the chosen mine (or an inventory-drop spot for powermining)" - - "Al Kharid powermining: survive aggressive level-14 scorpions (food/prayer at low levels)" + - "Al Kharid powermine route gate: combat level >= 29 (a monster attacks players at <= 2x its level; the scorpion is level 14, so 29+ is safe) OR carry food; below the gate use the banked South-east Varrock route (no aggressive NPCs)" best_practice: equipment: @@ -82,8 +85,11 @@ state_machine: goal: walk to the bank, deposit ores, walk back to the mine next: [mine, idle] drop_run: - goal: drop the ore stack at a safe spot and resume mining - next: [mine] + goal: "drop EVERY ore slot: one right-click Drop per slot (a6), looping until the inventory is empty (non-stackable ores: 27 slots, 27 Drops)" + next: [drop_run, mine] + survive: + goal: "Al Kharid scorpion aggro: eat when HP < 40%; retreat out of the aggro radius if overwhelmed; return to the 3-rock cluster when safe" + next: [mine, failed] complete: goal: level or GP target reached failed: @@ -93,14 +99,26 @@ state_machine: when: "inventory full (banked mode)" to: bank_run - from: mine - when: "inventory full (powermine mode)" + when: "inventory full (powermine mode: 27 ore slots)" to: drop_run + - from: drop_run + when: "inventory still holds ore (count_item ore > 0)" + to: drop_run + - from: drop_run + when: "inventory empty (count_item ore == 0)" + to: mine + - from: mine + when: "HP < 40% (scorpion aggro at Al Kharid, sub-combat-29 run)" + to: survive + - from: survive + when: "HP >= 60% and out of combat" + to: mine + - from: survive + when: "food exhausted and HP < 40%" + to: failed - from: bank_run when: "ores deposited and back at the mine" to: mine - - from: drop_run - when: "stack dropped" - to: mine - from: idle when: "level or GP target reached" to: complete @@ -117,6 +135,7 @@ actions: location: "Al Kharid Mine (powermine) or South-east Varrock mine (banked)" method: [walk, teleport] note: "arrive with the best-tier pickaxe equipped" + route_gate: "Al Kharid powermine only at combat >= 29 (scorpions attack <= 28) or with food; otherwise South-east Varrock (banked, no aggressive NPCs)" on_fail: retry anti_ban: delay: [400, 1600] @@ -128,10 +147,10 @@ actions: params: rock: "iron rock (tier-gated: silver 20, coal 30, gold 40, mithril 55, adamantite 70, runite 85)" gate: "level_is Mining >= rock level" - rotation: "3-rock cluster; face the respawning rock (rune pickaxe, 3 ticks)" + rotation: "3-rock cluster; face the respawning rock (rune pickaxe, 3 ticks = 1.8s per roll)" on_fail: retry anti_ban: - delay: [600, 1400] # sub-1.8s click cadence is the bot tell; keep jitter above it + delay: [2000, 4200] # re-click cadence vs mining roll: rune pickaxe rolls every 3 ticks (1.8s) — clicking faster than the roll cannot speed the ore and IS the bot tell; 2.0-4.2s ≈ one click per roll/break cycle, humanised. Lower-tier pickaxes roll slower (bronze = 8 ticks = 4.8s): scale the pause above the roll interval. - id: a3 step: bank-ores @@ -168,14 +187,38 @@ actions: - id: a6 step: drop-ores verb: right_click - target: "ore stack in inventory" + target: "ore slot in inventory" params: option: "Drop" + iterate: "one occupied ore slot per execution — non-stackable ores need one Drop per slot; the drop_run -> drop_run transition re-executes a6 until count_item ore == 0" mode: "powermine only" on_fail: skip anti_ban: delay: [200, 800] # drop churn on a full inventory is human-normal + - id: a7 + step: eat-food + verb: eat + target: "food in inventory" + params: + threshold: "HP < 40%" + mode: "Al Kharid powermine only (scorpion aggro, sub-combat-29 run)" + supply: "session-level, not per-cycle: withdraw ~20 trout/salmon at the bank before a sub-combat-29 Al Kharid run" + on_fail: alert # no food left at low HP — the survive -> failed transition is the hard failure + anti_ban: + delay: [400, 1200] + + - id: a8 + step: retreat-scorpions + verb: retreat + target: "self" + params: + from: "scorpion aggro radius (Al Kharid mine)" + method: "walk out of attack range, then re-enter the 3-rock cluster once out of combat" + on_fail: retry + anti_ban: + delay: [600, 1800] + run_control: iteration: "one full mine -> bank (or drop) rotation" max_iterations: null @@ -185,18 +228,19 @@ run_control: stop_conditions: - "level or GP target reached" - "3 consecutive failed rock clicks (client issue — do not loop)" - # Respawn: N/A in this loop — no death/respawn mechanics (no combat in F2P - # mining; Al Kharid's aggressive scorpions are handled via food/prayer, not death). + - "death: hard failure — the Al Kharid gate (combat 29+) plus the survive state prevent it; if is_dead anyway (gate bypassed/griefed) log ERROR + alert and stop, no respawn loop" risk: ban_level: low notes: - "Mining is a staple low-risk method: long, repetitive, low-input behaviour that matches normal player sessions — the guide itself recommends hours of drop-mining." - - "The 3-tick powermine rotation is the detection vector if executed perfectly for hours — jitter the rotation cadence and take the break schedule." - - "Al Kharid mine has aggressive level-14 scorpions; at low levels carry food or prayer points (guide notes this)." + - "The 3-tick powermine rotation is the detection vector if executed perfectly for hours — jitter the rotation cadence (a2 delay 2.0-4.2s, above the 1.8s rune roll) and take the break schedule." + - "Al Kharid mine has aggressive level-14 scorpions: they attack players at combat level <= 28 (wiki Aggressiveness). Gate: run Al Kharid at combat 29+, or below that carry food (survive state eats/retreats; food out + low HP = hard failure). The banked South-east Varrock route has no aggressive NPCs." sources: - - "OSRS wiki — Free-to-play Mining training (ore level/xp table — all rows F2P; pickaxe tier table with tick intervals; Doric's Quest 1,300 xp; iron 50,000 xp/hr at 41+ / 52,500 at 61+; Al Kharid 3-rock spot; SE Varrock banking; Superheat coal; adamantite/runite as F2P money methods) — verified 2026-08-27" + - "OSRS wiki — Active/passive aggressive monsters: Aggressiveness (a monster attacks players whose combat level is <= 2x its level; a level-14 scorpion is safe from combat level 29) — verified 2026-08-27" + - "OSRS wiki — Scorpion (combat level 14, hitpoints 17; Al Kharid mine) — verified 2026-08-27" + - "OSRS wiki — Free-to-play Mining training (ore level/xp table — all rows F2P; pickaxe tier table with tick intervals; Doric's Quest 1,300 xp; iron 50,000 xp/hr at 41+ / 52,500 at 61+; Al Kharid 3-rock spot; SE Varrock banking; Superheat coal; adamantite/runite as F2P money methods; scorpions: 'bring food') — verified 2026-08-27" - "OSRS wiki — Mining (skill overview, members=No)" - "prices.runescape.wiki/api/v1/osrs/mapping (ore ids: iron 440, coal 453, silver 442, gold 444, mithril 447, adamantite 449, runite 451 — all members=false; buy limits)" - "prices.runescape.wiki/api/v1/osrs/latest (ore sell prices, snapshot 2026-08-27)"