Welcome!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

Sign up now!

Bug Interface interact issues?

Joined
Jun 17, 2015
Messages
19
(RS3) So I'm starting off with a basic script to mine gem rocks. All seems to be going great, and I'm now working on the banking. I'm using a gem bag - I've found the interface component for the first item in the bank inventory interface (762, 28, 0).
Problem is this component seems very finicky. If I check it in the interface explorer it will sometimes have the actions listed, sometimes it wont. Same thing goes for when I'm trying to interact with it - I've had it a few times manage to right click the gem back, and it'll just hover over "Empty" rather than click it (Using .interact("Empty"))

Am i doing something horribly wrong here?
 
Ignore me, I am infact an idiot. I guess the components frequently update (as objects). I was saving to a var and then interacting, seems to work consistently if I interact directly on the query.

EDIT Spoke too soon... It's quite frequently missing the step of emptying the gem bag again now.
 
Last edited:
Joined
Apr 27, 2019
Messages
11
Clouse fails to click appropriately sometimes. This results in right-click menus being opened, but not ever clicked. You should have some way of determining whether your last action was completed appropriately built into your bot, and if it wasn't, try to perform the action again. This is a "feature" that's included with using Clouse, which significantly reduces the likelihood of being banned while botting with RuneMate.

Here's a partial example from a section of my bot involving picking up items:
Code:
public Boolean isActive = false;
public Date lastAction = new Date();

@Override
public void execute() {
    // If my action isn't completed in 2 seconds, clear the active status and try again.
    if (isActive && ((new Date()).getTime() - lastAction.getTime()) > 2000) {
        isActive = false;
    }
 
    if (!isActive) {
        // Boring code to find items I want to pick up.
        ...
        GroundItem target = queryResults.nearest();
        if (target != null) {
            target.interact("Take", target.getDefinition().getName());
            lastAction = new Date();
            isActive = true;
        }
    }
}

I have an inventory listener on this class that sets isActive to false whenever an item is picked up, so that I'll immediately go grab another item if there's more to get, rather than always waiting for my timeout. About 75% of the time, I get my item the first time around. Occasionally, the right-click menu will pop up 2-3 times before it successfully clicks to take the item.

Every once in a while, although even more rarely, it picks up the wrong item from a stack of items on the ground, so there's more logic to deal with that happening... hence the problems with considering everything to have been just added to inventory upon logging in for the first time to be a problem for me - when I pick up items I don't want, I add them to a list of items to be dropped later, leading to dropped food, potions, runes, etc later on since when my bot starts up I don't have anything added to the list of items I want to keep, and they're all marked to be dropped.

Update:
As a side note, I just found this thread, which suggests replacing Clouse with MLP:
Question - How to "attack" enemies more accurately
 
Last edited:
Top