Java. Inside the client.
Read game state, select targets, and use supported actions. Write your own automation logic with the embedded Java API.
runescape.bot is an automation client for RuneScape Mobile.


See the bigger picture. Explore the game map and work with navigation controls, scripts, and game state in one toolkit.
Your ideas. Your automation.
Bring them to life with Java and the tools to build it.
Read game state, select targets, and use supported actions. Write your own automation logic with the embedded Java API.
Explore API documentation and examples alongside your script. Inspect the game, build your routine, and load it into the mobile client.
Character state, skill levels, and experience.
Nearby entities and supported interactions.
Items, quantities, and guarded item actions.
Route planning and task-based movement.
Interface inspection and supported actions.
Find a nearby NPC by name, after checking that the snapshot is available and fresh.
EntitySnapshot findNpc(ObsidianClient client, String name) {
var nearby = client.npcs().nearby();
// Work with an available, fresh snapshot.
if (!nearby.availability().isAvailable()
|| nearby.availability().ageMillis() > 1000) {
return null;
}
return nearby.entries().stream()
.filter(npc -> npc.nameAvailable())
.filter(npc -> name.equalsIgnoreCase(npc.name()))
.findFirst()
.orElse(null);
}
Available capabilities depend on the supported client build and current game session.
Find runescape.bot on Discord.
Follow development and connect with the community.