promotional bannermobile promotional banner

Accurate Projectile Trajectory Preview

Accurate Projectile Trajectory Preview is a NeoForge client-side Minecraft mod that displays a real-time projectile trajectory preview. LikePTP, but with improved trajectory accuracy and without multiplayer restrictions. Forked from ptp by maDU59 (MIT)
cb1640d59bffd5a0335f0d56caba928d92839010.jpeg

cb1640d59bffd5a0335f0d56caba928d92839010.jpeg

4eacd3c4438ea8e4961a908a23e2a08521a79994.jpeg

4eacd3c4438ea8e4961a908a23e2a08521a79994.jpeg

d0328987c52118cfe4e8812e112b8fc3bbee2f73.jpeg

d0328987c52118cfe4e8812e112b8fc3bbee2f73.jpeg

e8c8523e72c579e29c7d744707af6f458b08dcac.jpeg

e8c8523e72c579e29c7d744707af6f458b08dcac.jpeg

bc852b80d9c742c5004c7d960a0366be94b18074.jpeg

bc852b80d9c742c5004c7d960a0366be94b18074.jpeg

Description

Accurate Projectile Trajectory Preview

Forked from Projectile Trajectory Preview by maDU59 (MIT License)


Ever wondered where your arrow, snowball, or potion will land? This mod provides a visual preview of projectile trajectories, similar to PTP, but with improved prediction accuracy and no multiplayer limitations.

🔎 Features

  • Trajectory Visualization: Displays the expected path of your projectile before launching.
  • Target Highlighting: Trajectory color indicates a higher likelihood of hitting a target.

⚠️ Limitations and Notes

  • Minecraft projectile physics include random spread offsets, so the actual impact position may slightly differ from the preview.
  • However, trajectory prediction is designed to be more precise than the original PTP implementation.

🔬 Technical Changes Compared to Original PTP

This fork modifies both the simulation logic and multiplayer behavior:

Multiplayer behavior

  • Removed the server handshake check (serverHasMod)
  • Removed networking validation logic
  • Trajectory preview is now always available client-side (no server requirement)

Simulation changes

  1. Removed projectileInfo.order-based update system
    The original implementation updated motion using a configurable order array. This fork replaces it with a fixed per-tick update sequence:
    • position update
    • drag application
    • gravity application
    This makes motion simulation consistent and closer to vanilla projectile behavior.

 

  1. Reworked entity collision handling
    • Reduced broad-phase AABB inflation from 1.0 to 0.3
    • Added distance-based spread-aware entity hit detection
    • Added a “guaranteed hit” detection flag when the ray intersects the true bounding box

 

  1. Improved spread simulation
    • Added distance-based spread offset:
      spreadOffset = normalizedVelocity * (distanceFromStart * maxSpreadFactor)
    • Adjusted spread multiplier from * 3.0 to * 2.0
    • Spread is now simulated dynamically per step instead of being approximated

 

  1. Refined water physics handling
    • More explicit switching between normal drag/gravity and underwater values
    • Applied consistently during simulation loop

 

  1. Minor stability improvements
    • Early velocity zero-check (vel.lengthSqr() < 1e-8)
    • Added startPos tracking for spread calculation

📦 Modpacks

Feel free to include this mod in your modpacks.


Legal Information / Impressum: View Impressum on GitHub 

The Accurate Projectile Trajectory Preview Team

profile avatar
  • 1
    Projects
  • 29
    Downloads

hobby developer interested in software architecture, automation, and hardware-software integration Impressum(Legal Disclosure): https://github.com/siakinnik/siakinnik/blob/main/impressum.md

Donate