Skip to content

Release Hub development updates for Microbot 2.6.35 - #663

Merged
chsami merged 6 commits into
mainfrom
claude/release-hub-2026-10-20
Oct 20, 2026
Merged

chsami merged 6 commits into
mainfrom
claude/release-hub-2026-10-20

Conversation

@chsami

@chsami chsami commented Oct 20, 2026

Copy link
Copy Markdown
Owner

Summary

Releases the reviewed development plugin updates to the stable Hub, alongside Microbot 2.6.35 (chsami/Microbot#2012). AIO Fighter 2.2.10 (#662) is already on main and goes out with this release.

Included

Validation

./gradlew compileJava compileTestJava test passes against the 2.6.35 candidate jar built from the client release branch. ci.yml will be dispatched on this branch once 2.6.35 is published.

🤖 Generated with Claude Code

https://claude.ai/code/session_01KUfHdRQvMSKFQZBWcXjzkZ

droplugins and others added 6 commits October 18, 2026 17:49
…597)

* fix(drofirecape): resolve internal defaults outside RuneLite config proxy

* feat(bosses): add Firecape repeat option and confirm shortage logout

* fix(bosses): verify proxy contracts and correct pending client requirement

* ci: recheck boss updates against released Microbot 2.6.32

* fix(zulrah): dispatch inventory operations from live widget actions

* fix(firecape): require live inventory widget actions

* test(zulrah): align descriptor assertion with widget-action release
… mine, blank keep list no longer stalls drop mode (1.0.15) (#655)

* fix(AutoMiningPlugin): progressive banking, mine anchor and blank keep list (1.0.15)

- Run the progressive location check only in MINING so a bank trip can
  deposit instead of being walked back to the mine before the deposit tick.
- Anchor the mining location to the selected progressive mine, so the
  walk-back, rock search and bank return no longer pull the player to the
  start tile (also after a level-up switches the mine).
- Parse "Items to keep" with MiningBankRule.parseItemNames so empty entries
  no longer match every item and stall drop mode on a full inventory.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LjtEMzQHGuq4M1Mpqk9pPV

* fix(AutoMiningPlugin): keep the pickaxe when the keep list is blank

A blank or separator-only "Items to keep" parsed to an empty list, so
drop mode dropped the whole inventory, including a carried pickaxe.
Fall back to the config default "pickaxe" when the parsed list is empty.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LjtEMzQHGuq4M1Mpqk9pPV

* fix(AutoMiningPlugin): drop keep-list test that passes without the fix

keepListDropsEmptyEntries only exercised the empty-entry filtering that
parseItemNames already had, so it passed on the old code and proved
nothing. The blank-list fallback test, now also covering ", ", is the
one that fails without the fix.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LjtEMzQHGuq4M1Mpqk9pPV

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…(1.0.8) (#658)

CipherClueTask.walkToLocation runs on the script executor and called
CipherClue.getLocation directly. For the Eluned cipher the location provider
calls Quest.getState, which asserts the client thread and threw
IllegalStateException, failing the task. Resolve the location through
runOnClientThreadOptional and keep the null check for a clean failure.


Claude-Session: https://claude.ai/code/session_01LjtEMzQHGuq4M1Mpqk9pPV

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…5.11) (#659)

* fix(GotrPlugin): guard region checks against null player location (1.5.11)

isInHugeMine, isInLargeMine, isOutsideBarrier and isInMainRegion
dereferenced Rs2Player.getWorldLocation() without a null check, so the
usePortal sleepUntil threw an NPE while the region loaded after the
portal teleport. Read the location once, return false when it is null,
and use its X coordinate instead of a client-thread lookup on
getLocalPlayer().

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LjtEMzQHGuq4M1Mpqk9pPV

* fix(GotrPlugin): skip loop tick while player location is unknown

The region predicates now return false for a null location, so the main
loop read the region-load window after a portal teleport or altar trip as
"not in the minigame" and could click the barrier or reset plugin state.
Bail out of the iteration until Rs2Player.getWorldLocation() is known.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LjtEMzQHGuq4M1Mpqk9pPV

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…fting (2.0.4) (#660)

handleFighting passed Rs2Player.getWorldLocation() straight into
WorldArea.contains, which throws an NPE when the local player is briefly
unavailable during logout, hop, death or loading. Skip the tick when the
location is null and route the combat-area check through a shared null-safe
isInArea helper. Apply the same guard to the Eytallali distance check.


Claude-Session: https://claude.ai/code/session_01LjtEMzQHGuq4M1Mpqk9pPV

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
@chsami
chsami merged commit 8d4a0f7 into main Oct 20, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants