Skip to content

1.8.7#879

Merged
chsami merged 182 commits intomainfrom
development
Apr 23, 2025
Merged

1.8.7#879
chsami merged 182 commits intomainfrom
development

Conversation

@chsami
Copy link
Copy Markdown
Owner

@chsami chsami commented Apr 23, 2025

1.8.7

See1Duck and others added 30 commits April 6, 2025 03:56
  Updated the inventory setup logic to use `Rs2InventorySetup` instead of `InventorySetup`, enhancing modularity and compatibility. Added detailed logging to improve debugging during potion and food checks. These changes improve the bot's ability to handle banking scenarios more efficiently.

  - Replaced `InventorySetup` with `Rs2InventorySetup` for inventory management tasks.
  - Enhanced logging for missing items (potions, food, etc.) to facilitate easier diagnostics.
  - Improved handling of potion and food checks to ensure accurate banking requirements.
…oup handling.

  Enhanced the sorting logic with a new greedy nearest-neighbor algorithm using Jaro-Winkler similarity to improve organization of non-teleport groups. Introduced separate handling for rune groups, ensuring they are processed distinctly and sorted alphabetically. This improvement provides a more intuitive and human-like tab organization, improving usability for automated bank management.

  - Added Jaro-Winkler-based similarity sorting for non-teleport groups.
  - Introduced a new category for rune items, sorted and processed independently.
  - Ensured smoother tab completion by handling specific group arrangements.
  Introduced `fullPathTo` method using BFS algorithm to compute every tile on the path from source to destination, with collision handling and backtracking. This enhancement supports more granular path navigation in botting scripts.

- **Rs2WorldPoint**: Add option to toggle detailed pathfinding.

  Updated `pathTo` to include a `fullPath` parameter, enabling the use of the newly implemented `fullPathTo` method. This allows bot developers to choose between simplified checkpoints or detailed paths, improving control over bot navigation.
  Introduced `hasFinishedBuyingOffers` and `hasFinishedSellingOffers` methods to verify if all Grand Exchange buy/sell offers are fully completed. These enhancements allow bots to efficiently detect the completion state of offers without false positives, improving automation reliability.

  - Ensured all active offers are processed to avoid partial checks.
  - Improved state validation by distinguishing between ongoing and finished offers.
  Corrected an issue where the `isTradeable` property was not being properly assigned from the `itemComposition` object. This ensures accurate determination of tradeable status for items, improving reliability in inventory automation scripts.

  - Updated the tradeable check to properly assign the `isTradeable` value for better consistency.
…t items.

  Enhanced teleportation logic by incorporating menu numbering for items like Games Necklaces, Rings of Dueling, etc. This resolves issues where menu options were ambiguous or dependent on runtime states.

  - Reordered and numbered teleport options in `teleportation_items.tsv` for consistency.
  - Added new methods in `NewMenuEntry` to calculate identifiers for menu options with offsets.
  - Updated `Rs2Inventory` to support interaction with items using custom identifiers.
  - Improved `Rs2Walker` to account for menu-driven teleportation, adding fallback logic for item interactions.
  Introduced a new `Rs2ItemManager` class to handle item-related operations including searching items, retrieving item IDs, compositions, prices, and Grand Exchange prices. This significantly enhances the capability to interact with in-game items programmatically, improving the automation process for developers.

  Changes include:
  - Added JSON-based item database (`items-summary.json`) for item lookups.
  - Implemented methods for item search by name, fetching IDs, and retrieving item details like GE price and composition.
  - Improved bot script efficiency by centralizing and streamlining item-related functions.
  Made `closeBank` return `true` when the bank is already closed, improving logic clarity. Enhanced `withdrawX` by altering `findBankItem` to check item quantity for safer withdrawals. Added `isBankCloseby` to detect nearby bankable objects without interaction, prioritizing banks, chests, and NPCs based on proximity.

  - Fixed inefficient null checks in `findBankItem`.
  - Integrated `isBankCloseby` with `walkToBankAndUseBank` to streamline banking logic.
  - Added utility methods to empty specific containers: `emptyHerbSack` and `emptySeedBox`, improving inventory management automation.
  Updated fire-handling mechanics to douse fires dynamically based on the player's path in non-solo (mass world) mode. Adjusted navigation logic to prioritize clearing obstacles efficiently, minimizing interference. Key changes include:

  - Introduced path-based fire identification and dousing, ensuring smoother traversal in mass world scenarios.
  - Added visual overlays to display the player's last walk path, aiding debugging and optimization.
  - Refined phase progression and objective handling to improve bot behavior consistency.
  Implemented a fully-featured kitten tracking plugin, including growth, hunger, and attention timers, to optimize cat rearing in-game. This feature set automates kitten care and provides clear overlays and notifications to prevent neglect.

  - Introduced `FollowerKind` and `Felines` enums for consistent classification of cats, kittens, and related entities.
  - Added timers (`KittenGrowthTimer`, `KittenHungryTimer`, `KittenAttentionTimer`) for tracking growth stages, hunger states, and attention needs.
  - Implemented `KittenConfig` to manage plugin configurations (e.g., toggling overlays and notifications).
  - Developed the `KittenAttentionEvent` to automate kitten interaction using a ball of wool.
  - Introduced various dialog and chat handlers in `KittenPlugin` to process game events and update kitten status dynamically.
  - Added notification support for critical events like hunger and kitten escape warnings.
  Added a method to create inventory setups using a provided name, bypassing dialog prompts. This simplifies the process, enabling automated setup creation for botting applications.

  - Introduced `addInventorySetup(String name)` to handle direct inventory setup creation with validation and normalized container handling.
  - Enhanced `updateCurrentSetup` to include an optional dialog confirmation toggle, improving flexibility for automated updates.
  - Optimized imports for readability, ensuring maintainability and code clarity.
  Introduced a new `priority` flag to the `PluginDescriptor` annotation, enabling plugins to be prioritized during startup. Updated the `PluginManager` to sort plugins by this flag, ensuring critical plugins load first. Optimized imports in `PluginManager` to align with best practices.

  - Added `priority()` property to `PluginDescriptor` to denote plugin importance.
  - Modified `PluginManager` to sort plugins based on the new `priority` property.
  - Cleaned up and consolidated unused imports.
  Adjusted the break timer logic to include a check for `isLockState()`. This prevents break timer resetting when scripts are in a locked state, ensuring more reliable and consistent bot behavior.

  - Addressed potential conflicts during lock state by adding an additional safeguard.
  - Enhanced script stability during anti-ban and break handling.
  Implemented a new utility class to streamline Slayer task operations and related botting functionalities. This includes methods to retrieve current tasks, monster locations, weaknesses, and protective gear. Enhances task automation and reduces manual configuration.

  - Added methods to check active Slayer tasks, retrieve task size, and determine task-specific monster names.
  - Integrated support for avoiding blacklisted monsters and wilderness areas during bot navigation.
  - Includes functionality to handle monster-specific weaknesses and protective equipment requirements.
  - Added teleportation and pathfinding assistance for reaching task locations efficiently.
Gage307 and others added 29 commits April 22, 2025 13:28
Demonic gorillas: Bugfix & small design changes
Automining addon: world hop if certain players amount is in the distance to stray area
changed torag's tile, added canReach to the brother check, made entering mounds more consistent
Chaos Altar Plugin + Moss Killer Plugin fixes + API additions
Swapped the tunnel walker to a future
Fix for the animation check in automining for world hop
# Conflicts:
#	cache/pom.xml
#	pom.xml
#	runelite-api/pom.xml
#	runelite-api/src/main/java/net/runelite/api/ItemID.java
#	runelite-api/src/main/java/net/runelite/api/NullItemID.java
#	runelite-client/pom.xml
#	runelite-jshell/pom.xml
#	runelite-maven-plugin/pom.xml
@chsami chsami merged commit 4ca8a1b into main Apr 23, 2025
2 checks 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.