Skip to content

Boats and Ice

Slippery boat movement that coasts when you stop steering. You can tune how the ice feels.

What players feel

Every player rides a boat on a round sheet of ice. The movement is built into the plugin, so it does not depend on the block under the boat. When you hold forward, the boat speeds up. When you let go, it keeps gliding and slows down on its own. Turning while moving fast feels loose, like real ice.

This is what makes the game tense. You cannot stop on a coin, so you have to plan your turns before you reach your own ground.

How it works

Each tick the plugin keeps part of your speed and adds a little more when you steer. Three settings control the feel:

Setting What it does Default
ice-physics.decay-coefficient How much speed is kept each tick. Higher is more slippery. 0.95
ice-physics.acceleration Speed added each tick while holding forward. 0.08
ice-physics.max-speed Top speed in blocks per tick. 1.2
ice-physics.use-packet-input Read steering straight from the client (needs PacketEvents). Off or no PacketEvents falls back to a speed estimate. true

Tuning the glide

Start with the defaults. If you want grippier, easier control, lower decay-coefficient toward 0.80. If you want a wild, very slippery feel, raise it toward 0.99. Small changes make a big difference, so move in steps of 0.02.

Sharper controls with PacketEvents

Install the optional PacketEvents plugin and the boat reads your keys exactly: forward paddles, back brakes and reverses, no key coasts. Without it the plugin estimates your input from the boat's speed, still fully playable, just a touch less precise.

Try it

  1. Join a match with /zfb join.
  2. Hold forward to build up speed.
  3. Let go and watch the boat coast and slow down.
  4. Turn at speed to feel how wide the boat swings.

See Configuration for the full list of settings.