Skip to main content

Sailing Actions

Verification boundary

This page documents the committed source. Treat revision-sensitive RuneLite UI, packet, or in-game outcomes as pending live-client verification unless the page records direct evidence.

SailingActions currently exposes an eight-heading Direction enum and the planned sailing API surface. It lacks a verified gameplay write or observation implementation.

Write methods

setDirection, increaseSpeed, decreaseSpeed, setSails, and unsetSails return a failed InteractionResult with status UNSUPPORTED. They do not consume the shared action pacer or claim that a gameplay request dispatched. Passing null to setDirection instead returns TARGET_NULL.

Check the result rather than treating method return as evidence of a direction, speed, or sail-state change.

InteractionResult result = SailingActions.setDirection(SailingActions.Direction.NORTH);
if (result.getStatus() == InteractionStatus.UNSUPPORTED) {
log.debug("Sailing writes are unavailable: {}", result.getMessage());
}

Read methods

The read methods are placeholders, not live observations:

  • isNavigating() returns false.
  • isMoving() returns false.
  • getDirection() returns Direction.NORTH.

Do not use these values to infer current boat state until we implement a verified observation path.