River Crossing: Beat the Current

An educational simulation game. Add the boat's velocity to the current and land on the dock.

Vector additionRelative velocity

RIVER / TOP VIEW

Gentle current

Ready
Enable JavaScript to steer the boat. The instructions and worked example remain readable.
Boat velocity v_b (relative to the water)Current v_wGround velocity vDockYour predicted landing
Velocity additionv = v_b + v_w

Time

0.00 s

t

Position

(0.00, 0.00) m

r = (x, y)

Ground velocity

(0.00, 0.00) m/s

v = (vₓ, v_y)

Ground speed

0.00 m/s

|v| = √(vₓ² + v_y²)

Distance travelled

0.00 m

s = |v| · t

Predict where the boat lands

Aiming straight across is not the same as moving straight across. Set a heading, then predict where the boat will reach the far bank.

Cross the river and hit the target.

Mission score—

Land within 2 m of the dock directly opposite the start.

✓ Mission goal◎ Prediction within 3 m

How to play River Crossing

  1. Choose a mission and read the river width W, the current u, and the boat speed s.
  2. Set the heading. Positive angles aim upstream, against the current.
  3. Slide the predicted landing point to where you think the boat will reach the far bank.
  4. Press Play. Watch v_b and v_w add tip to tail into the ground velocity v, and compare the landing with your prediction.

Velocities add as vectors

The boat's velocity relative to the water and the water's velocity relative to the ground add tip to tail: v = v_b + v_w. Only the across component v_y sets the crossing time t = W ÷ v_y, while the along-river component v_x sets the drift x = v_x · t. The size of the sum is not the sum of the sizes.

A focused learning model

The current is uniform across the whole river, and the boat keeps a constant heading and speed relative to the water, with no acceleration at the start or finish. The distance travelled equals the size of the displacement here only because the path is a straight line. Playback runs 5 times faster than real time.

Changing language keeps your mission, heading, prediction, and crossing.