promotional bannermobile promotional banner

Trajectory Projected

Client-side trajectory preview using vanilla physics: a clean dotted arc, an impact marker, and a spread decal showing where shots can land. Works with Iris shaders.
2026-11-09_00.14.58.png

2026-11-09_00.14.58.png

2026-11-09_00.15.13.png

2026-11-09_00.15.13.png

2026-11-09_00.15.45.png

2026-11-09_00.15.45.png

2026-11-09_00.16.27.png

2026-11-09_00.16.27.png

2026-11-09_00.17.10.png

2026-11-09_00.17.10.png

Description

Trajectory Projected

See where it lands, and how far the spread can carry it.

Trajectory Projected is a client-side mod for Minecraft 26.2 on Fabric that shows where your bow, crossbow, trident or thrown item will land. The flight is simulated tick by tick in the order vanilla uses, from the same position and rotation the server will fire with.

Every shot also carries the server's random spread, which no line can show. Around the hit, a spread zone falls on the blocks like a shadow and marks where the projectile can actually land.

The bow has been measured in game with logged shots, and the fishing rod against real casts.

What it shows

Projectiles

  • Bow while drawn, at the draw it would fire with.
  • Crossbow when charged: arrows, Multishot volleys with every arrow on its own path, and firework rockets.
  • Trident while readied. A trident with Riptide, which launches you instead, shows nothing.
  • Thrown items: snowballs, eggs, ender pearls, splash and lingering potions, bottles o' enchanting and wind charges.
  • Fishing rod while held and not cast: the path of the cast and a ghost of the hook where it will land, with a ring when it will float on water. Hooking a mob or a player shows the cross.

The line

  • A dotted path that keeps an even spacing on screen, near and far, and stays steady while you move.
  • Parts hidden behind blocks are drawn faint and outlined, so the path never disappears behind a wall.
  • In first person the line starts beside the view, from the hand that throws, and bends into the flight. Crossbow lines start at the eyes.
  • A rocket's lifetime is random: its line fades out after the earliest moment it can explode.

The target

  • A hit marker on the surface the projectile will meet.
  • On a mob or a player the marker becomes a cross, the line pulses gently, and the crosshair turns into a cross.
  • Spread zone: a soft shade with a thin rim on the blocks around the hit. It wraps over steps and walls, leaves out what other blocks shield from the projectile, and its inner ring marks where about half of the shots land. A ring for 90% of the shots and an allowance for draw timing on servers can be turned on, and each part has its own switch.

Honest by design

  • Only what the client already knows is shown. The mod never aims, shoots or picks targets for you.
  • Where the outcome is unknown, it shows less rather than a confident wrong line: the path stops at chunks that are not loaded, Multishot volleys whose spread depends on conditions only the server can check show only the arrow that flies straight regardless, and a shot into water shows no zone where its spread scatters too widely to say where the arrow lands.

Settings

Press F7 in-game. Settings are grouped into General, Line and Target, with search across all pages. Hover a setting for details; changes save automatically. A key to turn trajectories on and off can be set under Options → Controls → Key Binds → Trajectory Projected. English and Russian translations are included.

Compatibility

  • Requires Fabric API. Nothing needs to be installed on the server.
  • I play with Sodium (0.9.2 tested).
  • With Iris (1.11.4 tested) and a shader pack, the line, markers and zone are drawn over the pack's finished image, so they stay sharp; they are not lit or fogged by the pack. Checked with Complementary Reimagined r5.8.1 and BSL v10.1.8.
  • Other rendering mods have not been tested.
  • Some servers don't allow mods like this one, so check the rules of the server you play on. Plugins and custom rules can also change what a server fires.

Accuracy

I fired 334 logged bow shots and compared each prediction with the launch the server sent and with where the arrow stopped.

  • Singleplayer, 184 shots standing, moving, jumping and at partial draw: every launch stayed within vanilla's spread limit. Standing, arrows stopped a median of 0.6 blocks from the predicted point at 25 blocks, 1.6 at 43 and 1.3 at 59, and never more than 4.6. That distance is the random spread.
  • My own small server, full draw, 60 shots: every launch stayed within the limit.
  • The zone's rings: of 291 logged bow shots, 48.8% fell inside the half ring and 92.4% inside the 90% ring, counted across the launch direction from the spread the server drew.
  • Fishing rod: in my test runs, real casts came to rest within 0.09 blocks of the prediction. On my own server I didn't notice a cast landing outside the ghost bobber, even on the very edge of a block; that was by eye, not logged.
  • My own small server, partial draw, 60 shots: in 22 the server counted one tick more or less than the client, which the client can't know in advance. At 9–15 blocks such a shot stopped about 1.1–1.4 blocks from the prediction, up to 2.1. The Allow for draw timing option widens the zone for this, and is off by default. A further 30 partial draws exposed a bug in how the mod counted the draw, which is fixed.

The server results come from one server and one evening: about 166 ms ping and no other players. Other latency, server load or plugins may give different numbers. The crossbow, the trident and thrown items only had short singleplayer checks, the fishing rod was checked on a server by eye only, and I haven't checked the widened zone against real shots.

Not shown

Projectiles already in flight, a Loyalty trident's return and eyes of ender.

License

The code is under the MIT license. The mod icon and the banner are simplified recolors of Minecraft textures, which belong to Mojang, and are not covered by that license.

Source and full notes: https://github.com/WilyFoxM/TrajectoryProjected

Trajectory Projected Team

profile avatar
Owner
  • 2
    Projects
  • 86
    Downloads

More from WilyFox

  • DrawLess project image

    DrawLess

    DrawLess is a client-side Minecraft rendering optimization mod focused on reducing redundant work without sacrificing visual fidelity. Same scene. Less work.

    • 50
    • November 5, 2026
  • DrawLess project image

    DrawLess

    DrawLess is a client-side Minecraft rendering optimization mod focused on reducing redundant work without sacrificing visual fidelity. Same scene. Less work.

    • 50
    • November 5, 2026